IE8的JavaScript点击事件(onclick)不兼容的解决方法

前端技术 2023/09/06 JavaScript

博客园闪存分页是用JavaScript生成的,今天发现在IE8下点击页码不能翻页,翻页操作是在当前页码的onclick事件中进行的。

开始代码是这么写的:

复制代码 代码如下:

var a = document.createElement(\"a\");
a.setAttribute(\"onclick\", this.ClickFunctionName + \"(\" + pageIndex + \");Pager.SetCurrent(\" + pageIndex + \");\");

由于IE8不支持setAttribute方法,这里添加的onclick事件处理程序并未添加上。

后来改为jQuery的attr方法:

复制代码 代码如下:

$(a).attr(\"onclick\", this.ClickFunctionName + \"(\" + pageIndex + \");Pager.SetCurrent(\" + pageIndex + \");\");

这样虽然添加上去了,但不管怎么点击,onclick事件处理程序就是不执行,Chrome与Firefox都没这个问题。

最终通过下面的代码解决了问题:

复制代码 代码如下:

var js = this.ClickFunctionName + \"(\" + pageIndex + \");Pager.SetCurrent(\" + pageIndex + \");\";
a.onclick = function() { eval(js); }

本文地址:https://www.stayed.cn/item/17202

转载请注明出处。

本站部分内容来源于网络,如侵犯到您的权益,请 联系我

我的博客

人生若只如初见,何事秋风悲画扇。