ie和firefox不兼容的解决方法集合
2009-04-28 19:30
561 查看
1、firefox和ie事件event处理
在ie中,事件对象是作为一个全局变量来保存和维护的。 所有的浏览器事件,不管是用户触发
的,还是其他事件, 都会更新window.event 对象。 所以在代码中,只要轻松调用 window.event
就可以轻松获取 事件对象, 再 event.srcElement 就可以取得触发事件的元素进行进一步处理
在ff中, 事件对象却不是全局对象,一般情况下,是现场发生,现场使用,ff把事件对象自动传
递给对应的事件处理函数。 在代码中,函数的第一个参数就是ff下的事件对象了。
<button id="btn4" onclick="foo4()">按钮4</button>
<script>
function foo4(){
var evt=getEvent();
var element=evt.srcElement || evt.target ;
alert(element.id)
}
function getEvent()
{ //同时兼容ie和ff的写法
if(document.all) return window.event;
func=getEvent.caller;
while(func!=null){
var arg0=func.arguments[0];
if(arg0){
if((arg0.constructor==Event || arg0.constructor ==MouseEvent) || (typeof(arg0)=="object" && arg0.preventDefault && arg0.stopPropagation)){
return arg0;
}
}
func=func.caller;
}
return null;
}
</script>
2、firefox和ie对手型指针cursor不兼容
手型指针有cursor:hand和cursor:pointer两种写法,其中cursor:hand在ff中不支持,返回错误!
只要使用cursor:pointer即可,ff和ie都支持!
在ie中,事件对象是作为一个全局变量来保存和维护的。 所有的浏览器事件,不管是用户触发
的,还是其他事件, 都会更新window.event 对象。 所以在代码中,只要轻松调用 window.event
就可以轻松获取 事件对象, 再 event.srcElement 就可以取得触发事件的元素进行进一步处理
在ff中, 事件对象却不是全局对象,一般情况下,是现场发生,现场使用,ff把事件对象自动传
递给对应的事件处理函数。 在代码中,函数的第一个参数就是ff下的事件对象了。
<button id="btn4" onclick="foo4()">按钮4</button>
<script>
function foo4(){
var evt=getEvent();
var element=evt.srcElement || evt.target ;
alert(element.id)
}
function getEvent()
{ //同时兼容ie和ff的写法
if(document.all) return window.event;
func=getEvent.caller;
while(func!=null){
var arg0=func.arguments[0];
if(arg0){
if((arg0.constructor==Event || arg0.constructor ==MouseEvent) || (typeof(arg0)=="object" && arg0.preventDefault && arg0.stopPropagation)){
return arg0;
}
}
func=func.caller;
}
return null;
}
</script>
2、firefox和ie对手型指针cursor不兼容
手型指针有cursor:hand和cursor:pointer两种写法,其中cursor:hand在ff中不支持,返回错误!
只要使用cursor:pointer即可,ff和ie都支持!
相关文章推荐
- ie和firefox不兼容的解决方法集合
- ie和firefox不兼容的解决方法集合
- ie和firefox不兼容的解决方法集合
- JavaScript在IE和Firefox(火狐)的不兼容问题解决方法小结
- flash透明\flash置底无效\flash遮挡div的解决方法 兼容Firefox ,IE,chrome浏览器
- mouseover和mouseout多次触发解决方法(兼容ie和firefox)(转)
- JavaScript在IE和Firefox(火狐)的不兼容问题解决方法小结
- js操作textarea方法集合封装(兼容IE,firefox)
- JavaScript在IE和Firefox(火狐)的不兼容问题解决方法小结 【转】http://blog.csdn.net/uniqer/article/details/7789104
- CSS样式important和*和_:兼容IE、Firefox、Opera和Safari CSS的解决方法及CSS差别
- JavaScript在IE和Firefox(火狐)的不兼容问题解决方法小结
- JavaScript js 兼容浏览器问题 兼容FireFox(FF)、IE的解决方法
- 常用IE与Firefox的CSS兼容差异及解决方法
- JavaScript js 兼容浏览器问题 兼容FireFox(FF)、IE的解决方法
- 原型扩展的方法解决IE和Firefox的Js兼容问题
- CSS样式important和*和_:兼容IE、Firefox、Opera和Safari CSS的解决方法及CSS差别
- 常见浏览器兼容问题及相关解决方法(chrome/IE/firefox)
- JS中使用new Date(str)创建时间对象不兼容firefox和ie的解决方法(两种)