javascript - Firefox:HTML keyUp 事件没有事件数据

标签 javascript html firefox dom-events onkeyup

onKeyUp 事件在 IE(7) 中有效,在 Firefox(4.0.1) 中无效。

我有一个带有属性 onclick="eventName();" 的文本框 在 Javascript 函数 eventName(evt) 中。我没有事件数据,事件数据不是由 Firefox 发送的。另一方面,在 IE 中,window.event 已填充,所以在这里可以正常工作...

IE和Firefox都能达到这个功能。唯一的问题是我需要那里的事件数据。 谁能指导我解决这个烦人的问题?

示例页面:

<html>
<head>
    <script type="text/javascript">
        function upperCase(evt) { 
            if (evt) {
                var target = evt.target;
                target.value = target.value.toUpperCase();
            } else if (window.event) {
                var target = window.event.srcElement;
                target.value = target.value.toUpperCase();
            } else alert('No event information');
        }
    </script>
</head>
<body>
    <span>Enter your name: </span>
    <input type="text" id="fname" onkeyup="upperCase()" />
</body>
</html>

最佳答案

IE 用一个全局的来处理事件。事件作为函数的第一个参数传递的所有其他内容。

onkeyup="upperCase()"

你不会在那里做任何事情。我什至不确定你能做到——除了多年来最微不足道的玩具,我没有触及任何东西的内在事件属性。

给定

document.getElementById('fname').keyup = upperCase;

(或者,更好的是,使用 attachEvent/addEvent,将填充 evt 变量。)

关于javascript - Firefox:HTML keyUp 事件没有事件数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6275217/

相关文章:

html - 溢出 : auto doesn't work with images

javascript - appendChild 未正确设置parentElement

javascript - 如何在 imap-simple 中检索 "sent"邮箱

javascript - express 发送文件错误404未找到

javascript - Twitter "tweet this"按钮在 Firefox 中显示为按钮,在 Chrome 中只是一个链接

jquery - 使用jquery获取背景图像名称

html - HTML 表格中的卡住列透明覆盖表格的其余部分

c++ - 非绘图 Mozilla 插件

javascript - chrome 和 firefox 中 canvas.getContext ("2d").getImageData(x,y,1,1).data 的问题

macos - osx 安装脚本 - 检测 firefox 是否正在运行并提示重新启动