我有一段代码,要实现点击网页任何部分,分析点击部分的标签(tagName),然后做出判断。里面要用到click事件监听,和event的传递,在firefox和ie兼容方面出现了问题。以下是代码。if(!document.all) {
window.document.addEventListener("click",hit,false);
}else{
window.document.attachEvent("onclick",hit);
}function hit(e){
var evt = window.event|| e;
var element=evt.srcElement || evt.target;
//继续
} 这段代码在ie下执行是没问题的,但是在firefox下通不过。因为firfox需要传递当前event给调用函数才能在函数中获取,而我的代码在监听过程中,调用hit函数却没法加参数,我修改代码为:
window.document.addEventListener("click",hit(event),false); 是通不过的。不知道哪位高手能指点下,是不是我写错了,或者有没有别的方法?
window.document.addEventListener("click",hit,false);
}else{
window.document.attachEvent("onclick",hit);
}function hit(e){
var evt = window.event|| e;
var element=evt.srcElement || evt.target;
//继续
} 这段代码在ie下执行是没问题的,但是在firefox下通不过。因为firfox需要传递当前event给调用函数才能在函数中获取,而我的代码在监听过程中,调用hit函数却没法加参数,我修改代码为:
window.document.addEventListener("click",hit(event),false); 是通不过的。不知道哪位高手能指点下,是不是我写错了,或者有没有别的方法?
解决方案 »
- 各位高手帮帮忙啦。。。
- js添加网页到收藏夹的问题!
- 地址栏中的参数怎么没有传过去呢??
- 用javascript 或CSS能改变一个图片上部分颜色吗
- javascript(和css一起用,魔幻布局的问题)
- 左右折叠
- <div id="popup" style="width:300;" onblur="alert(1)"></div> 这句怎么不执行?
- 如何只触发这样的效果
- JS中如何判断一个对象或属性是否存在?属性的值如何传递给PHP程序?
- 新人求教 页面刷新
- |zyciis| Jquery Ajax如何捕捉我的ASP.NET的出错信息,如:throw new Exception("测试错误");
- |zyciis| Jquery中的,$(document).ready后是什么事件,因为我想在ready后执行一段代码
document.attachEvent("onclick",function(e){hit(e)});
<script>
window.onload = function(){
if(!document.all) {
window.document.addEventListener("click",function(evt){hit(evt)},false);
}else{
window.document.attachEvent("onclick",hit);
}
}function hit(e){
var evt = window.event|| e;
var element=evt.srcElement || evt.target;
alert(element.tagName);
} </script>
<div>xxxxxxxxx</div>
function hit(){
var evt = window.event|| arguments[0];
var element=evt.srcElement || evt.target;
}