|
attachEvent(IE)与addEventListener(FF)
当某一事件被触发时需要执行某个函数,在IE下可用attachEvent,在FF下则要用addEventListener。
attachEvent()有两个参数,第一个是事件名称,第二个是需执行的函数;
addEventListener()有三个参数,第一个是事件名称,但与IE事件不同的是,事件不带"on",比如"onsubmit"在这里应为"submit",第二个是需执行的函数,第三个参数为布尔值;
举例[在IE和FF下分别测试]:
<input type="button" id="ie" value=" IE " /> <input type="button" id="ff" value=" FF " /> <script type="text/javascript"> var isIE = (document.all && window.ActiveXObject && !window.opera) ? true : false; if(isIE) { document.getElementById('ie').attachEvent("onclick", Fun); } else { document.getElementById('ff').addEventListener("click", Fun, false); } function Fun() { if(isIE) { alert('I\'m IE'); } else { alert('I\'m Not IE'); } } </script>
看看gmail的代码
var Ka=navigator.userAgent.toLowerCase(); var rt=Ka.indexOf("opera")!=-1; var r=Ka.indexOf("msie")!=-1&&(document.all&&!rt);
function Zl(a,b,c){if(r){a.attachEvent("on"+b,c)}else{a.addEventListener(b,c,false)}}
文章来源:http://www.master8.net
|