jQuery addEventListener在IE8中不起作用

时间:2013-08-20 19:54:26

标签: javascript addeventlistener

我有一个包含addEventListener的脚本,并且发现它不支持< IE9。我看到的所有修复程序在根据我的脚本编辑时都不起作用,所以寻找一些定制的帮助!

    $(document).ready(function(){




var excuses = [

'excuse one',
'excuse two',
'excuse three',
'excuse four',
'excuse five',
'excuse six',
'excuse seven',
'excuse eight',
'excuse nine'

];

var bttn = document.getElementById('refresh');
var excuse = document.getElementById('excuse');
var rando = 0;

var makeExcuse = function(){
  rando = Math.floor(Math.random()*excuses.length);
  excuse.innerHTML = excuses[rando];
};



makeExcuse();

bttn.addEventListener('click',function(e){
  e.preventDefault();
  makeExcuse();






});



});

非常感谢!

2 个答案:

答案 0 :(得分:3)

试试这个:

if(!bttn.addEventListener) {
    bttn.attachEvent("onclick", makeExcuse);
}
else {
    bttn.addEventListener("click", makeExcuse, false);
}

您必须为IE8及更早版本执行此操作,因为早于IE 9的版本不支持此版本。此文档中记录了大约一半的页面。

Legacy Internet Explorer and Attach Event

答案 1 :(得分:0)

以jQuery的方式做到:

 $('#refresh').bind('click', makeExcuse);