Javascript IE不';t在“输入并选择”选项卡上触发更改事件

Javascript IE不';t在“输入并选择”选项卡上触发更改事件,javascript,html,internet-explorer,internet-explorer-8,internet-explorer-6,Javascript,Html,Internet Explorer,Internet Explorer 8,Internet Explorer 6,我有一个密码: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> <head> <script type="text

我有一个密码:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
  <head>
    <script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script>
    <script type="text/javascript">
        $(document).ready( function() {
            $("#my_select").change(function(e){alert(e);})
            $("#my_select").focus();
        });
    </script>   
  </head>
  <body>
    <select id="my_select">
        <option>1</option>
        <option>2</option>
        <option>3</option>
    </select>
    <input />
  </body>
  </html>

$(文档).ready(函数(){
$(“#我的选择”).change(函数(e){alert(e);})
$(“#我的选择”).focus();
});
1.
2.
3.
在IE中打开,选择将处于焦点,使用向上/向下/字母键盘按钮选择任何数字,然后按enter/tab键,不会触发警报。为什么

PS:是的,jquery版本很旧,我知道,但我现在无法切换到新版本。

PS2:IE8和IE6

它可能不会在模糊(enter/tab)上触发,因为它可能已经在向上或向下的箭头上触发了——在IE9中尝试它时就是这样做的

IE(也是Opera)在处理
元素的
更改
事件时一直存在“bug”:


还请注意,jQuery 1.4.2和旧版IE之间的问题可能是造成这种情况的原因,因为在1.4.2中报告了一些bug,并在1.4.3中修复了这些bug:和。

它可能不会在blur(回车/制表符)上触发,因为它可能已经在向上或向下的箭头上触发了——在IE9中尝试时就是这样做的

IE(也是Opera)在处理
元素的
更改
事件时一直存在“bug”:


还要注意的是,jQuery 1.4.2和旧版IE之间的问题可能是造成这种情况的原因,因为1.4.2中报告了一些错误,1.4.3中修复了一些错误:和。

非常感谢您提供这些链接,您对如何在不更改jQuery版本的情况下修复它有什么想法吗?非常感谢您提供这些链接,你知道如何在不改变jQuery版本的情况下修复它吗?你的代码在我的IE版本9中运行良好。您有哪个IE版本?按下up/down键时是否触发
更改
事件?它应该这样做,而不是按enter键。这似乎只是internet explorer,它在最新版本的google chrome中工作:),对于任何试图解决这个问题的人来说,这里有一个JSFIDLE可以帮助你:当按下上/下键盘按钮时,会触发更改事件。我不需要按enter/tab键@MaxArt您应该试试这段代码。我不能使用jQuery 1.7.2,我的项目使用1.4.2,在ie8事件中,在enter或tab上激发,而不是在每个up/down上激发。您的代码与我的IE版本9配合得很好。您有哪个IE版本?按下up/down键时是否触发
更改
事件?它应该这样做,而不是按enter键。这似乎只是internet explorer,它在最新版本的google chrome中工作:),对于任何试图解决这个问题的人来说,这里有一个JSFIDLE可以帮助你:当按下上/下键盘按钮时,会触发更改事件。我不需要按enter/tab键@MaxArt您应该试试这段代码。我不能使用jQuery 1.7.2,我的项目使用1.4.2,在ie8中,事件在enter或tab上激发,而不是在每个up/down上激发