国产成人精品久久免费动漫-国产成人精品天堂-国产成人精品区在线观看-国产成人精品日本-a级毛片无码免费真人-a级毛片毛片免费观看久潮喷

您的位置:首頁技術文章
文章詳情頁

javascript - IE兼容問題 動態生成的節點IE瀏覽器無法觸發,求助

瀏覽:169日期:2023-05-19 09:26:00

問題描述

代碼很簡單,就是動態生成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();}

問題解答

回答1:

ie下click()不能操作文檔中沒有的節點,所以你可以在click()前添加下面的語句

document.body.appendChild( input );input.style.display = ’none’;input.click();

要想兼容ie9之前用attachEvent而不是addEventListener。還有ie9之前不兼容getElementsByClassName

回答2:

為什么 button 使用了 .onclick,后面的 input 卻用了 .addEventListener 呢?

在 addEventListener 文檔的 傳統的 Internet Explorer 及其 attachEvent 方法 有說明:

對于 Internet Explorer 來說,在IE 9之前,你必須使用 attachEvent 而不是使用標準方法addEventListener。

回答3:

IE8及以下沒有addEventListener方法 可用attachEvent()方法監聽事件 要注意attachEvent回調中的this指向的是window哦

回答4:

用下面這個來綁定事件

var addEvent = function(elem, type, handler){ if(window.addEventListener){addEvent = function(elem, type, handler){ elem.addEventListener(type, handler, false);}; }else if(window.attachEvent){addEvent = function(elem, type, handler){ elem.attachEvent(’on’ + type, handler);}; } addEvent(elem, type, handler);};addEvent(input, 'change', function(e){ alert('changed');});

標簽: JavaScript
相關文章:
主站蜘蛛池模板: 美美女高清毛片视频免费观看 | 国产杨幂福利在线视频观看 | 中国国语毛片免费观看视频 | 毛片在线高清免费观看 | 亚洲a人| 国产一区二区三区免费 | 成人欧美在线 | 香蕉视频亚洲一级 | 国产视频久久久 | 国产成人香蕉在线视频网站 | 91精品最新国内在线播放 | 亚洲偷自拍另类图片二区 | 超级碰碰碰视频视频在线视频 | 一级黄网站 | 九九在线观看精品视频6 | 国产精品日韩一区二区三区 | 久色视频在线 | 亚洲wwww| 免费观看欧美精品成人毛片 | 高清一级淫片a级中文字幕 高清一区二区 | 国产精品欧美亚洲韩国日本不卡 | 国产精品高清久久久久久久 | 国产欧美日韩不卡在线播放在线 | 韩国精品一区二区三区四区五区 | 仑乱高清在线一级播放 | 日本一级视频 | 亚洲一区二区精品 | 日本三级欧美三级人妇英文 | 日韩三级中文 | 亚洲日本va午夜中文字幕一区 | 国产国语对白一级毛片 | 99国产精品九九视频免费看 | 成年人看的黄色片 | 亚洲99在线的 | 久久精品亚洲精品一区 | 欧美精品片在线观看网站 | 国产精品观看在线亚洲人成网 | 极品的亚洲| 中文字幕天堂最新版在线网 | 欧美成人精品三级网站 | 亚洲综合久久1区2区3区 |