A. 怎样用js模拟键盘事件
1. IE下没什么问题,创建事件对象、对对象的keyCode属性赋值,然后再抛出来就行了:
2. Firefox 需要通过document.createEvent创建KeyEvents对象,再通过initKeyEvent方法对事件对象初始化
initKeyEvent 参考:https://developer.mozilla.org/en-US/docs/Web/API/KeyboardEvent/initKeyEvent
3. Chrome/Safari/Opera
通过document.createEvent创建UIEvents对象,初始化后再在该对象上挂载按键值。
initUIEvent 参考:https://developer.mozilla.org/en-US/docs/Web/API/UIEvent/initUIEvent
Chrome和Opera可以先将keyCode属性delete掉后,再用Object.defineProperty方法重新为它赋值:
有些安卓浏览器,此法无效,需要用下面的方式:
最后,封装好的function大概就是这样:
使用方法: 假设模拟回车
B. js如何才能模拟键盘按键
各位前辈,我想模拟键盘事件,写一个button,点击该button就相当于按了键盘的enter事件,该怎么处理?谢谢
C. javascript获取软键盘弹起&收回事件
当软键盘弹起触发resize时,屏幕的宽度不变,高度缩小;
而当旋转屏幕触发resize时,屏幕的宽和高是互换的,但数值不变。
根据这个特征就能区分resize是被何种事件触发的了。
D. javascript怎样调用屏幕软键盘
<html>
<body>
<inputtype="text"id="tt"/>
<scriptlanguage="javascript"type="text/javascript">
document.getElementById('tt').onfocus=function(){
varshell=newActiveXObject("wscript.shell");
shell.run("osk.exe");
}
</script>
</body>
</html>
我知道:
这个只能在IE浏览器实现,而且需要设定IE的安全级别,允许浏览器加载ActiveXObject控件,如图回。
如果不用系统自答带的软键盘,可以用js实现。网上找到一个js写的。你可以看看
E. 怎样用js模拟键盘事件
主动触发事件是一个经常会用到的技巧,它很重要。它和事件绑定一样存在着浏览器兼容性问题。传统浏览器(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);
};
F. js怎么控制虚拟键盘弹出和收起
js 移动端关于页面布局,如果底部有position:fixed的盒子,又有input,当软键盘弹出收起都会影响页面布局。这时候可以监听resize事件,代码如下,而ios没有相关事件。
var winHeight = $(window).height(); //获取当前页面高度$(window).resize(function(){ var thisHeight=$(this).height(); if(winHeight - thisHeight >50){ //当软键盘弹出,在这里面操作 }else{ //当软键盘收起,在此处操作 }
});
/**
* 解决ios键盘弹出遮挡input
*/
function iosInput() {
if(isIos()){
$('.chart-footer').css('position','absolute');
//解决第三方软键盘唤起时底部input输入框被遮挡问题
var bfscrolltop = document.body.scrollTop;//获取软键盘唤起前浏览器滚动部分的高度
$(".chart-input").focus(function(){//在这里‘input.inputframe’是我的底部输入栏的输入框,当它获取焦点时触发事件
interval = setInterval(function(){//设置一个计时器,时间设置与软键盘弹出所需时间相近
document.body.scrollTop = document.body.scrollHeight;//获取焦点后将浏览器内所有内容高度赋给浏览器滚动部分高度
},100)
}).blur(function(){//设定输入框失去焦点时的事件
clearInterval(interval);//清除计时器
document.body.scrollTop = bfscrolltop;
//将软键盘唤起前的浏览器滚动部分高度重新赋给改变后的高度
});
}
}
iosInput();
G. 怎样用js模拟键盘事件
没有确切的方法,只能模拟绑定KeyPress事件,而且事件触发能通过按键的值。KeyPress事件主要用来捕获数字(注意:包括Shift+数字的符号)、字母(注意:包括大小写)、小键盘等除了F1-12、SHIFT、Alt、Ctrl、Insert、Home、PgUp、Delete、End、PgDn、ScrollLock、Pause、NumLock、{菜单键}、{开始键}和方向键外的ANSI字符。相关事件是keydown事件和keyup事件。相关的按键数字你可以网上找一下,如:enter =13 ,shift =16 。这样就可以知道是哪个按钮按下了。
H. 我在用JS写一个虚拟软键盘,请问那个空格键的功能怎么实现
输出 & n b s p;(去掉空格..)