【问题标题】:IE 11 issue - Alert() popup is getting displayed after minimizing the current windowIE 11 问题 - 最小化当前窗口后显示 Alert() 弹出窗口
【发布时间】:2017-09-12 19:52:19
【问题描述】:

我有以下简单的 html 页面,其文本字段显示模糊事件的警报消息。每当用户关注文本字段并单击窗口内的任意位置时,都会在最小化当前窗口后显示警报消息,即警报消息的后端不会显示当前窗口,因为它被最小化了。仅当单击警报消息的确定按钮时,窗口才会重新显示。在文本字段中使用选项卡按钮时不会发生此问题。

<!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" >
<head>
    <title>Untitled Page</title>
</head>
<body>
<input name="txtFromDate" tabindex="6" id="txtFromDate" style="width: 75px;"  onblur="alert('Clicked');" type="text" maxlength="10" value="04/11/2017">

</body>
</html>

存在此问题的 IE11 版本 – 11.0.9600.16384(windows server 2012 R2)、11.0.9600.18378(windows server 2012 R2)、11.0.9600.18618(Windows 8)

没有此问题的 IE11 版本 - 11.0.960.18617(安装在 Windows 7 中)

请建议是否有任何解决方法。

注意:这在 IE8 中运行良好

【问题讨论】:

  • 您应该在 form.submit(event) 处理程序或 onchange、oninput、onkeypress、onkeydown 和文档的 onbeforeunload 事件中验证您的表单字段。您的示例代码未显示您尝试实现的逻辑和流程。听起来您想在用户关闭选项卡/窗口或离开表单时提示用户保存表单数据。
  • 这只是一个示例代码,是实际应用程序的复制。我们试图实现的是验证并在通过 onblur 事件输入错误日期时显示警报消息(即,如果用户将焦点从文本字段移开)。问题是:显示警报消息但不在同一窗口内,它通过最小化当前窗口显示在当前窗口后面。

标签: javascript jquery html asp.net internet-explorer


【解决方案1】:

onblur="(this!=document.activeElement)&&setTimeout(function(){alert('Clicked')},0)"

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-12-14
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多