簡體   English   中英

在IE中重復警告“來自網頁的消息:null”

[英]Repeating alert “Message from web page: null” in IE

我正在使用下面的jQuery代碼來啟動疊加div,它在Chrome和Firefox中運行良好 - 但在IE9中它會啟動一個窗口“你想離開這個頁面嗎?” 並且還說“來自網頁的消息:null”。 在此之后點擊的每個鏈接上都會出現窗口,直到您通過注銷結束會話(這是一個基於Codeigniter的應用程序)

任何有關可能導致這種情況的見解都將非常感激。

編輯:違規代碼是:

window.onbeforeunload = function(){saveFormData(); 返回false; }

我不知道你頁面中的確切問題在哪里,但我相信你已經遇到了IE的歡樂和onbeforeunload事件。

在Internet Explorer中,它將所有導航鏈接點擊視為“離開”頁面,因此如果您定義了onbeforeunload事件,您將收到確認消息(假設您的代碼或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 Developer Tools的控制台部分嘗試此操作。

我再次不確定這將如何影響代碼中的內容。 如果有任何問題被破壞,請正確測試所有代碼。 將中斷的代碼可能與附加到頁面卸載或onbeforeunload事件的任何偵聽器相關。 在我的情況下,沒有任何:)

希望能幫助到你。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM