代码是为页面上的某些按钮添加一些访问键。界面是这样的: 带有一些手风琴标签的主页让我们说accordion_A,accordion_B和accordion_C,有一个按钮A让我们说'accordion_A'标签,对于那个按钮A,一个热键(例如:ALT + D)被添加,所以按下它会调用该按钮相关的功能。
if ( _browser.isIE )
text += " href='javascript:void(0)'" +
" onfocus='KeyPressed(\"" + key + "\")'></A>";
else
text += " href='Javascript:KeyPressed(\"" + key + "\")'></A>";
首先打开页面,让我们假设accordion_C是默认选项卡,现在我转到accordion_A,现在热键被添加到accordion_A(延迟选项卡)上的按钮中。现在我再次回到accordion_C并按'ALT + D'来调用accordion_A上的按钮。按钮功能调用并打开一个弹出窗口。问题从这里开始,在IE中,当我关闭弹出窗口时,再次启动onfocus事件,这将永远继续下去。
有没有办法对付这种现象,感谢阅读,希望我很清楚。
答案 0 :(得分:0)
尝试在KeyPressed功能中添加此功能
event.cancelBubble = true;
if (event.stopPropagation) event.stopPropagation();