javascript - IE兼容问题 动态生成的节点IE浏览器无法触发,求助
本文介绍了javascript - IE兼容问题 动态生成的节点IE浏览器无法触发,求助的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
问 题
代码很简单,就是动态生成input标签,来实现change事件无法处理相同文件。在chrome,firefox中都有效,但在ie浏览器中无法触发打印3.求助!!!
var button=document.getElementsByClassName('button')[0];
var imgBox=document.getElementsByClassName('imgBox')[0];
button.onclick=function(){
inputImg();
}
function inputImg(){
var input=document.createElement('input');
input.type='file';
input.addEventListener('change',function(e){
console.log(3);
});
input.click();
}
解决方案
ie
下click()
不能操作文档中没有的节点,所以你可以在click()
前添加下面的语句
document.body.appendChild( input );
input.style.display = 'none';
input.click();
要想兼容ie9
之前用attachEvent
而不是addEventListener
。
还有ie9
之前不兼容getElementsByClassName
这篇关于javascript - IE兼容问题 动态生成的节点IE浏览器无法触发,求助的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文