首页 新闻 会员 周边

js动态创建的元素使用dispatchEvent函数和fireEvent在IE中无效

0
悬赏园豆:30 [已关闭问题] 关闭于 2016-08-03 00:22

测试结果:

动态创建的元素使用dispatchEvent函数在IE9+无效但不报错,在google等标准浏览器功能正常;

表单定义的元素使用dispatchEvent函数在IE9+正常,在google等标准浏览器功能正常;

动态创建的元素使用fireEvent函数在IE8及以下浏览器报“未知名的错误”;

表单定义的元素使用fireEvent函数在IE8及以下浏览器功能正常;

以下是页面代码,求大神帮忙,感激不尽:

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
<script type="text/javascript">
function test() {
var aLink = document.createElement("a");
aLink.download = "";
aLink.href = "MultiDownLoad.aspx";
if (document.createEventObject) {
// IE浏览器支持fireEvent方法
var evt = document.createEventObject();
if (aLink.fireEvent) {
//aLink.fireEvent("onclick", evt);
aLink.fireEvent("onclick");
}
}
else {
// 其他标准浏览器使用dispatchEvent方法
var evt = document.createEvent('HTMLEvents');
evt.initEvent("click", true, true);
aLink.dispatchEvent(evt);
}
}
</script>
</head>
<body>
<form id="form1" runat="server">
<div>
<input type="button" id="btn1" value="确定" onclick="test();" />
</div>
</form>
</body>
</html>

AndonLi的主页 AndonLi | 初学一级 | 园豆:128
提问于:2016-08-02 10:59
< >
分享
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册