Js IE、FF兼容问题整理

1、window.event

  • IE:有window.event对象
  • FF:没有window.event对象。可以通过给函数的参数传递event对象。

     如:

  
    
< input type = " button " onmousemove = " showDiv(event); " // event不需要加引号
function showDiv(event)
{
var event = window.event || event;
event.clientX;
event.clientY;
}
 

  
    
// 鼠标当前坐标
IE:event.x和event.y。
FF:event.pageX和event.pageY。
通用:两者都有event.clientX和event.clientY属性。

// 鼠标当前坐标(加上滚动条滚过的距离)
IE:event.offsetX和event.offsetY。
FF:event.layerX和event.layerY。
解决方法:
< script >
function test(event) {
var event = event || window.event;
// or var event = event ? event : window.event;//这2中都可以,也可以用if else(这简写)
var x = event.offsetX || event.layerX;
var y = event.offsetY || event.layerY;
// do Something
}
< / script>
< div onmousedown = " test(event) " >< / div>
//innerText在IE中能正常工作,但是innerText在FireFox中却不行. 需用textContent   

你可能感兴趣的:(IE)