是event对象,这种写法一般是用来兼容firefox的

解决方案 »

  1.   

    非ie浏览器,很多年前针对NS4的时候就这么写了
      

  2.   

    能不能进一步解释一下?还是不明白
    document.onmousemove = mouseMove;
    function mouseMove(ev){
    那个ev是空的啊
      

  3.   

    因为 NS类的浏览器都回默认一个回调事件e的,跟ie是8同的
      

  4.   

    document.onmousemove = mouseMove;
    function mouseMove(ev){
    那个ev是空的啊
    -----------------------------你首先要声明一个evnet对象.不论何时你移动鼠标/点击/按键等等,会对应一个event的事件.在Internet Explorer里event是全局变量,会被存储在window.event里. 在firefox中,或者其他浏览器,event事件会被相应的自定义函数获取.当我们将mouseMove函数赋值于document.onmousemove,mouseMove会获取鼠标移动事件. (ev = ev || window.event) 这样让ev在所有浏览器下获取了event事件,在Firefox下"||window.event"将不起作用,因为ev已经有了赋值.在MSIE下ev是空的,所以ev将设置为window.event.
      

  5.   

    学习中...楼主问的,小弟也解释一下:
    firebox的话,onmousemove事件的参数ev就赋了类似event的对象
    其他几个方法都是兼容firebox和IE内核的
    比如ev = ev || window.event;如果firebox的话ev就有值,而window.event是null
    反之,如果是IE的话,ev是null,window.event就是当前触发的event对象
    mouseCoords方法中也类似区分两者顺便问一下zhaoxiaoyang(梅雪香@深圳) 和 liuxiaoyi666(MSMVP 小猪妹荣誉马甲之八卦兔子) 
    对于什么样的网页有这种需求,是不是国内有很多人用firebox啊?
      

  6.   

    国内用FF的人8算多,不过有增多的趋势,meizz说全世界14%的人用.....