<script type="text/javascript">
    function event_obj(event) {
        var obj = event.srcElement ? event.srcElement : event.target;
        return obj;
    }
    function a() {
        var obj = event_obj(event);
        var left=$(obj).offset().top;
        var right = $(obj).offset().left;
        alert(left + '\n' + right);
    }
</script>
<input type="button" value="测试" onclick="a()" />
1、以上代码在ie下运行正常,但是在firefox下却不行
2、jquery对于“事件”有没有一个通用的解决方法?以上代码改成jquery的应该如何改呢?

解决方案 »

  1.   

    试试<HTML>
    <HEAD>
      <TITLE> New Document </TITLE>
    <script type="text/javascript">
        function event_obj(event) {
            var obj = event.srcElement ? event.srcElement : event.target;
            return obj;
        }
        function a(event) { //这里的参数要写上
            var obj = event_obj(event);
            var left = obj.offsetTop;//这里也改了一下,原来的在IE8里出不来
            var right = obj.offsetLeft;
            alert(left + '\n' + right);
        }
    </script>
    </HEAD>
    <BODY>
    <input type="button" value="测试" onclick="a(event)" /><!-- 这里的参数要写上 -->
    </BODY>
    </HTML>
      

  2.   


    <script type="text/javascript">
        function event_obj(event) {
            var obj = window.event? event.srcElement : event.target;
            return obj;
        }
        function a(event) {
            var obj = event_obj(event);
            var left=$(obj).offset().top;
            var right = $(obj).offset().left;
            alert(left + '\n' + right);
        }
    </script>
    <input type="button" value="测试" onclick="a(event)" />
      

  3.   

    <script src="jquery.js"></script><input type="button" value="测试" id="test"/>
    <script type="text/javascript">
       $("#test").click(function(){ 
                   alert($(this).offset().left+"\n"+$(this).offset().top);
                });
    </script>
      

  4.   


    请问doug_wang,我如果非要把方法单独写出来,然后再用在button上用onclick调用,用jquery有很好解决方案吗?
      

  5.   


    <script type="text/javascript">
        function event_obj(obj1) {
            var obj = obj1.srcElement ? obj1.srcElement : obj1.target;
            return obj;
        }
        function a(obj1) {
            var obj = event_obj(obj1);
            var left=$(obj1).offset().top;
            var right = $(obj1).offset().left;
            alert(left + '\n' + right);
        }
    </script>在ff下的
      

  6.   


    <input type="button" value="测试" onclick="a(this)" />