【发布时间】:2011-01-01 17:28:07
【问题描述】:
我正在使用 jquery 对话框小部件来显示模式框。但是,当按下 F5 时,当模式打开时,不会发生刷新。有什么想法吗?
有趣的更新:
试试这个演示:http://jqueryui.com/demos/dialog/#modal-message 现在,当焦点在“确定”按钮上时,刷新 (F5) 起作用,但是当按钮没有焦点时,则没有。
更新 2
我们实际上可以在对话框中添加任何类型的控件,将高度和宽度设置为 0 css 并将焦点设置在它上面以使刷新工作。虽然这不是最好的解决方案。我仍在尝试让按键工作。
更新 3
以下似乎目前有效:
$(document).keydown(function(e)
{
if (e.which == 116) // key code of the F5 button
{
document.location.reload();
}
});
【问题讨论】:
-
我在演示站点上看到了同样的问题:jqueryui.com/demos/dialog/#modal
-
我不喜欢您的更新 3。这是一种解决方法,但不是很好。众所周知,非字母键的 JS 映射不适合跨浏览器,并且可能有人或浏览器将 F5 分配给其他东西。它对 UI 阻止的其他键也没有任何作用。我认为这是一个 jQueryUI 错误,应该这样报告。最好的解决办法是让 UI 停止捕捉这些键。
-
我同意它不是最好的,但是在我们的案例中,我们仅将 IE 和 FF 用于我们公司的 Intranet。为此,它起作用了。
标签: jquery jquery-ui jquery-dialog