gpt4 book ai didi

javascript - IE 中 JavaScript 中的按键

转载 作者:行者123 更新时间:2023-12-02 20:23:52 24 4
gpt4 key购买 nike

我有一个 Flex 应用程序。它在 HTML 页面上的播放器中运行。我需要捕获按键事件并防止 IE 浏览器按其预期运行。这是一些代码:

实际上,玩家被放置的部分..

<html>
<head>
</head>

<body scroll="no" onkeydown=keypress(event)>
<noscript>
<object id="app" width="100%" height="100%" onkeydown="keypress(event)" onkeypress="keypress(event)">
//some params
</object>
</noscript>
</body>
</html>

这是我尝试以不同方式捕获按键输入的一个:

<script language="JavaScript" type="text/javascript">

function keypress(e) {
alert("Hello from keypress");
}

function init() {
//index
alert("Init!!!");
document.getElementById('app').onkeydown = function() {
alert("Key Pressed - 1");
};
document.onkeydown = function() {
alert("Key Pressed - 2");
};

document.getElementById('app').onkeypress = function() {
alert("Key Pressed - 3")
};

document.onkeypress = function() {
alert("Key Pressed - 4")
};

window.onkeydown = function() {
alert("Key Pressed - 5");
};
window.onkeypress = function() {
alert("Key Pressed - 6");
};

document.body.onkeypress = function() {
alert("Key Pressed - 7")
};

document.body.onkeydown = function() {
alert("Key Pressed - 8")
};

if (window.addEventListener) {
window.addEventListener('keypress', keypress, false);
} else if (window.attachEvent) {
window.attachEvent('onkeypress', keypress);
} else {
window.onkeypress = keypress;
}
}


window.onload = init;
document.onload = init;
</script>

我不打算一起使用它们,只是将它们全部收集起来以向您展示我已经尝试了几乎所有内容(还包括所有带有 1 个参数的内容)。

问题是我收到的唯一警报是“Init!!!”。这是什么问题或者我做错了什么?

任何帮助将不胜感激。

编辑:我在播放器加载其内容之前收到“Init”消息..也许问题出在某个地方?

最佳答案

在 Internet Explorer 中,<object> 中的嵌入式控件内发生的事件元素不会在 DOM 对象上触发等效事件。它们由嵌入式控件使用,并且控件有责任相应地处理它们。

这意味着,当您的嵌入式 Flex 应用程序获得焦点时,您的 JavaScript 代码将无法处理任何关键事件。

关于javascript - IE 中 JavaScript 中的按键,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5141803/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com