转载:http://www.nowamagic.net/librarys/veda/detail/1698
实现模拟trigger click方法,实现方式判断浏览器,判断nodeName
依据是Safari/Chrome不支持非input/button元素的click方法。
function triggerClick( el ) {
var nodeName = el.nodeName,
safari_chrome = /webkit/.test(navigator.userAgent.toLowerCase());
if(safari_chrome && (nodeName != 'INPUT' || nodeName != 'BUTTON')) {
try{
var evt = document.createEvent('Event');
evt.initEvent('click',true,true);
el.dispatchEvent(evt);
}catch(e){alert(e)};
}else{
el.click();
}
}
或者直接判断元素是否具有click方法即可
Safari/Chrome中非input/button元素没有click方法,返回undefined
unction triggerClick( el ) {
if(el.click) {
el.click();
}else{
try{
var evt = document.createEvent('Event');
evt.initEvent('click',true,true);
el.dispatchEvent(evt);
}catch(e){alert(e)};
}
}
最后
以上就是傻傻丝袜最近收集整理的关于JS实现trigger click调用的全部内容,更多相关JS实现trigger内容请搜索靠谱客的其他文章。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复