2017-10-16 23 views
0

我打算在页面加载后激活按键,你能帮助我,我在哪里做错了。感谢在页面载入后激活按键(全屏键)

这里是我的代码

<script type="text/javascript"> 
window.onload = function(event) { 
var e = $.Event('keypress'); 
e.which = 122; // Character 'F11' 
$('item').trigger(e); 
} 

</script> 
+0

我敢肯定,如果浏览器不是直接用户输入,就像鼠标点击或实际按键一样,浏览器将阻止全屏激活。如果我没有弄错,编码按键将被阻止。 –

+0

[F11键事件fire on onload使用javascript]可能重复(https://stackoverflow.com/questions/24134194/f11-key-event-fire-on-onload-using-javascript) –

回答

0

JavaScript事件keycodes

for(let elem of document.querySelectorAll('*')) { 
    elem.addEventListener("keydown", KeyDownFun, true); 
} 

function KeyDownFun(KeyboardEvent) { 
    var keyDownCode = KeyboardEvent.keyCode || KeyboardEvent.which; 
    console.log("Key Event Code : ", keyDownCode); 
    if(keyDownCode == 122) { // F11 - 122, Ctrl - 17 
     $('item').trigger(KeyboardEvent); 
    } 
} 

可以停止event传播一些关键代码也

document.addEventListener("keydown", function(event) { 
    var keyDownCode = event.keyCode || event.which; 
    console.log("Key Event Code : ", keyDownCode); 
    if(keyDownCode == 122) { 
    event.stopImmediatePropagation(); 
    event.preventDefault(); 
    event.stopPropagation(); 

    //$('item').trigger(KeyboardEvent); 
    } 
}); 

@see

0

注:普请求需要从事件处理程序中调用或否则将被拒绝。 Firefox Fullscreen API

这意味着你需要像一个鼠标单击或按键一个真实的事件,以便浏览器aceept您的全屏请求。据我所知,代码触发的事件也因安全原因而被拒绝。 你没有指定为什么你需要这个,如果它是一个人们访问的网站,或者它是一个网站,要显示在特定的屏幕上。 在第二种情况下,您可以使用浏览器插件在启动时以全屏模式启动浏览器。 我已经使用mFull用于Firefox的屏幕显示效果很好,但还有很多。