重复警报“;来自网页的消息:null”;在IE中
Repeating alert "Message from web page: null" in IE
我正在使用下面的jQuery代码来启动一个覆盖div,它在Chrome和Firefox中运行得很好——但在IE9中,它会启动一个窗口"你想离开这个页面吗?"并显示"来自网页的消息:null"。在那之后,点击的每个链接都会继续出现窗口,直到你通过注销(这是一个基于Codeigniter的应用程序)结束会话
如果您能深入了解造成这种情况的原因,我们将不胜感激。
编辑:关闭代码为:
window.onbeforeunload=function(){saveFormData();return false;}
我不知道你页面中的确切问题在哪里,但我相信你已经遇到了IE
和onbeforeunload
事件的乐趣。
在Internet Explorer中,它将所有导航链接点击视为"离开"页面,因此,如果您定义了onbeforenload事件,您将收到确认消息(假设您的代码,或者CodeIgnitor框架已附加处理程序)
问题是这样一个链接:
<a href="javascript:doSomething();">Do something on this page without leaving</a>
将触发IE相信用户正在离开页面。
我绕过这件事的方法是做以下事情(虽然很难看,但效果很好)。
在页面"内部"的4-5个链接上的小页面(弹出窗口)中,我添加了一个CSS类:class="internal"
,然后在onbeforeunload
事件中,我会检查触发事件的源元素是否设置了类。。。如果是"忽略"抛出我的"你确定要离开吗?"类型的警告。。。
然而,在一个充斥着100和100个链接的"主页"上,这将是非常丑陋的尝试和实现。-祝你好运。
Scunliffe的回答帮助我以以下方式解决了这个问题-
在我所有JavaScript代码的末尾添加了以下一行。
window.onbeforeunload = function(){}
如果想进行快速测试,可以在IE开发者工具的控制台部分尝试。
同样,我不确定这将如何影响代码中的内容。因此,如果出现任何问题,请正确测试所有代码。将中断的代码可能与附加到页面卸载或onbeforeunload事件的任何侦听器有关。就我而言,没有:)
希望能有所帮助。
- 数组在递归方法中设置为null
- Ajax聊天消息重复而不仅仅是更新
- 如果localstorage为空,则显示欢迎消息
- 字符串在将其传递给另一个活动Android JavaScript时读取Null
- 无法获取属性'selectedIndex'的未定义引用或null引用
- Meteor方法在客户端返回null,在客户端运行的相同方法返回正确的值
- 绑定时将Parsley minlength消息作为选项传递时,未对其进行自定义
- 离开页面时弹出消息
- 来自文本输入null的html javascript变量
- 有没有一种方法可以在控制台关闭的情况下让console.log()在IE中记录消息
- delete在Object上效率低下,但在DOM Element's的数据属性,与null out相比
- 消息显示之外的淘汰验证
- 选项卡侦听器未被来自后台脚本的消息激活
- 我的代码给了我一条错误消息:GetElementById()为null或不是对象
- 收到错误消息:“未捕获的类型错误:无法读取 null 的属性'焦点'”时尝试调用 focus() 到元素
- TypeError: document.getElementById(..) 为 null - 错误消息
- 重复警报“;来自网页的消息:null”;在IE中
- IE 8中的jQuery错误:消息:'this.0.ownerDocument.body'为null或不
- 尝试通过signalR发送消息时,客户端为null
- IE8中的Prototype.js错误消息:'text'为null或不是对象