解决方案 »

  1.   

    (),!,~ 等都可以将函数转化为表达式,后边加上括号就代表执行这个函数,单独函数后边加括号报错,因为没有这样的用法//获取事件对象 
    e = e || window.event;//IE和Chrome下是window.event FF下是e 
    //获取事件源 
    var target = e.target || e.srcElement;//IE和Chrome下是srcElement FF下是target 里面的this 指向当前触发事件的对象
      

  2.   

    小鸡兄 e那个没懂
    ...function(e){
       .......
    }
    这里没传参数 问什么就自动把事件发生的元素传了进来呢! 万一我还想加别的参数怎么办!var a = 1;
    var b = 2;
    .....function(e,f,g){}(a,b) //现在是g代表事件发生的元素了?
      

  3.   

    1、正确!
    有操作符就是表达式了2、任何事件发生时,都需要向处理函数传递发生事件的主体,否则你就无所适从了
    IE 是通过 window.event 传递的
    非IE 是通过参数传递的
      

  4.   

    关于事件的处理,默认第一个参数就是指事件对象
    你甚至可以如下处理,至于为什么,更多的就是规则,定义,没必要太纠结于此
    window.onload=function()
    {
    var oDiv=document.getElementById('box');
    oDiv.onclick=function(){
    var ev=arguments[0]||event;//arguments[0] 实参 得到event对象
    alert(ev.clientX);
    }
    }
      

  5.   

    1
    无论是加括号还是加上感叹号,都是为了让浏览器把这个函数当成表达式。
    表达式计算的结果是一个函数,再遇上一对括号,就会执行这个函数。2
    这个e代表的是触发的事件,函数里面的this才是指向触发时间的元素
      

  6.   

    1
    无论是加括号还是加上感叹号,都是为了让浏览器把这个函数当成表达式。
    表达式计算的结果是一个函数,再遇上一对括号,就会执行这个函数。2
    这个e代表的是触发的事件,函数里面的this才是指向触发时间的元素
    怎么察看e!  我alert(e)  上面写的是object