2010-08-12 156 views
1

只有在IE瀏覽器中,當我加載包含javascript的網站時,它會導致頁面運行緩慢(並詢問是否要停止它),我得到一個警告。IE停止腳本警告

我見過有關這個的其他帖子,我找過任何長時間運行的代碼或無限循環等等。奇怪的是,當我選擇'否'(而不是終止腳本)頁面立即正確加載。它幾乎就像這個警告出現在頁面加載完成之前。有沒有人經歷過這個,或者知道爲什麼會發生這種情況?

+0

改編什麼是做網頁上的代碼?細節總是很好。 – epascarello 2010-08-12 16:05:04

回答

1

IE有自己的方式讓你的生活變得不可能。

只要停用警告,您可以在將來進一步研究,如果這是必要的。

這個article可能會幫助您確定IE爲什麼會發出這樣的警告。

問候,

+0

如何禁用警告?我記得看到有關使用註冊設置在您的計算機上禁用它的信息。但我怎麼能禁用任何人訪問該網站? – aeq 2010-08-12 14:19:28

+0

http://ezinearticles.com/?How-to-Get-Rid-of-the-JavaScript-Warning-on-Internet-Explorer&id=3555098這可能有助於 – 2010-08-12 14:19:57

+0

這是關閉您的瀏覽器..不適合禁止它在任何客戶端發生。我想我應該找到警告的來源,而不是禁用它。不過謝謝。 – aeq 2010-08-12 14:23:17

0

http://www.codeproject.com/Tips/406739/Preventing-Stop-running-this-script-in-Browsers

// Magic IE<9 workaround for irritating "Stop running this script?" dialog. 
RepeatOperation = function(anonymousOperation, whenToYield){ 
    var count = 0 
    return function(){ 
     if (++count >= whenToYield){ 
      count = 0 
      setTimeout(function(){anonymousOperation()}, 100) 
     } 
     else anonymousOperation() 
    } 
} 

// How to implement the workaround: 

//for (var i in retailers){ // Too big for IE<9! Use magic workaround: 
var i = 0; var noInArray = retailers.length 
var ro = new RepeatOperation(function(){ 

    // <<Your loop body here, using return instead of continue.>> 

    if (++i < noInArray) ro() 
    else alert("Loop finished.") 
}, 200) // Run this in batches of n. 500 is too much for IE<9. 
ro()