Vista 上 IE8 中的 Javascript blur() 命令不起作用

标签 javascript internet-explorer-8 focus windows-vista

我有一个项目,它会弹出一个窗口,其中包含一条消息给用户。它显示 10 秒,然后使用 javascript self.blur() 命令发送到后台。我不想关闭它,因为它包含用户可能需要再次查看的信息。

这目前适用于 Windows XP 上的 IE7/IE8/FF2/FF3,但在 Vista 上它不适用于 IE8。我发现,如果我在 Vista 上禁用 IE8 的“保护模式”,blur() 命令会起作用,并且窗口会正确地将焦点返回到父窗口。

有谁知道为什么会发生这种情况以及可以采取什么措施来解决这个问题? 任何帮助将不胜感激!

最佳答案

你是如何写入窗口的?窗口的初始来源是什么 -- about:blank?这可能会有所作为。此外,如果您从本地主机加载网页,请尝试从“真实”域运行它。

还有一个建议:试试灯箱或其他形式的 DHTML“图层”。使用当今可用的各种库可以很容易地创建它们;这种策略不仅可以解决您遇到的问题,还可以改善体验。变化可能比您真正想要的要大,但从长远来看会好得多。

关于Vista 上 IE8 中的 Javascript blur() 命令不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/831841/

相关文章:

performance - 如何禁用 IE8 脚本错误信息?

html - 在 href 后给予焦点

html - 输入文本前的行

angular - 如何在 Angular 2+ 中使用 HostListener 查找浏览器选项卡是否集中

javascript - 为 Reusable React Components 和 Browser history 设计状态

javascript - 将事件监听器添加到窗口的子对象

javascript - ruby rails : Difference of Authenticity Token being in Header or POST

php - 滚动条出现在我的网站内

javascript - 由于多种原因,AngularJS 应用程序无法在 IE 8 中正确呈现

internet-explorer-8 - 什么 IS 配置包含 "MSIE 8"和 "MSIE 6"?