怎样用js模拟键盘事件
1个回答
展开全部
主动触发事件是一个经常会用到的技巧,它很重要。它和事件绑定一样存在着浏览器兼容性问题。传统浏览器(IE8-)使用createEventObject来创建事件对象,用fireEvent这个方法来触发事件;现代浏览器用createEvent来创建对象,用dspatchEvent来触发事件。
//获取浏览器版本
var isIE=navigator.userAgent.match(/MSIE (;d)/i);
isIE=isIE?isIE[1]:undefined;
//事件函数
function onclick(e){
e=eevent;
alert(e.msg表酱紫啦,人家羞涩啦~);
};
//给document绑定一个点击事件
isIElt;9
//传统浏览器使用attachEvent
?document.attachEvent(onclick,onclick)
//现代浏览器使用addEventListner
:document.addEventListener(click,onclick,false);
//触发自定义事件
if(isIElt;9){
//传统浏览器
//创建对象
var event=document.createEventObject();
//给事件对象添加属性
event.msg=我是fireEvent触发的;
//触发事件
document.fireEvent(onclick,event);
}else{
//现代浏览器
//创建事件对象
var e=document.createEvent(MouseEvents);
//初始化事件对象
e.initMouseEvent(click),
//给事件对象添加属性
e.msg=我是despatchEvent触发的;
//触发事件
document.dispatchEvent(e);
};
//获取浏览器版本
var isIE=navigator.userAgent.match(/MSIE (;d)/i);
isIE=isIE?isIE[1]:undefined;
//事件函数
function onclick(e){
e=eevent;
alert(e.msg表酱紫啦,人家羞涩啦~);
};
//给document绑定一个点击事件
isIElt;9
//传统浏览器使用attachEvent
?document.attachEvent(onclick,onclick)
//现代浏览器使用addEventListner
:document.addEventListener(click,onclick,false);
//触发自定义事件
if(isIElt;9){
//传统浏览器
//创建对象
var event=document.createEventObject();
//给事件对象添加属性
event.msg=我是fireEvent触发的;
//触发事件
document.fireEvent(onclick,event);
}else{
//现代浏览器
//创建事件对象
var e=document.createEvent(MouseEvents);
//初始化事件对象
e.initMouseEvent(click),
//给事件对象添加属性
e.msg=我是despatchEvent触发的;
//触发事件
document.dispatchEvent(e);
};
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询