首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >模拟按键按下的Jquery脚本不运行键盘快捷键

模拟按键按下的Jquery脚本不运行键盘快捷键
EN

Stack Overflow用户
提问于 2012-12-11 21:05:44
回答 2查看 7.4K关注 0票数 1

我想提前感谢你在这件事上花费的时间和精力。好的,所以我有一个脚本,它应该模拟一个按键按下事件后,3秒后,一旦页面加载。我想让这个按键运行一个键盘快捷键,但它所做的一切只是按下键。按下快捷键后,如何才能实际运行快捷键?我甚至不确定这是否可能。再次谢谢。

代码语言:javascript
运行
复制
<script>
 setTimeout( function(){
// jQuery plugin. Called on a jQuery object, not directly.
jQuery.fn.simulateKeyPress = function(character) {
  // Internally calls jQuery.event.trigger
  // with arguments (Event, data, elem). That last arguments is very important!
  jQuery(this).trigger({ type: 'keypress', which: character.charCodeAt(0) });
};

jQuery(document).ready( function($) {
  // Bind event handler
  $( 'body' ).keypress( function(e) {
    alert( String.fromCharCode( e.which ) );
    console.log(e);
  });
  // Simulate the key press
  $( 'body' ).simulateKeyPress('z');
});
 }, 3000); //3 seconds

</script>

<script type="text/javascript">
// define a handler
function doc_keyUp(e) {

    // this would test for whichever key is 40 and the ctrl key at the same time
    if (e.ctrlKey && e.keyCode == 122) {
        // call your function to do the thing
        pauseSound();
    }
}
// register the handler 
document.addEventListener('keyup', doc_keyUp, false);
</script>
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-12-11 21:19:27

如果你试图触发某个浏览器或系统范围的键盘快捷键,那么这是一条死胡同--出于安全原因,这是不可能的。如果可能的话,你会在互联网上到处都有页面,这些页面甚至不需要询问就会自动添加到你的书签中(通过使用Javascript触发CTRL+B快捷方式)。

票数 8
EN

Stack Overflow用户

发布于 2012-12-11 21:19:20

您不会将处理程序first....do添加到

代码语言:javascript
运行
复制
jQuery(document).ready(function($) {
    // Bind event handler
    $('body').keypress(function(e) {
        alert(String.fromCharCode(e.which));
    });
});
jQuery.fn.simulateKeyPress = function(character) {
    jQuery(this).trigger({
        type: 'keypress',
        which: character.charCodeAt(0)
    });
};

setTimeout(function() {
    $('body').simulateKeyPress('z');
}, 3000); //3 seconds

要测试的示例:http://jsfiddle.net/x8a25/1/

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13821071

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档