2011-07-07 38 views
10

我的JavaScript不會加載,因爲它收到的錯誤,只在IE中。我使用調試器來獲取以下錯誤。此頁面在Safari,FF和Chrome中正確呈現JavaScript,但不在IE中,僅在此類特定頁面上呈現。Javascript錯誤:「沒有中繼設置」,只在IE 7中,8

http://tsqja.deznp.servertrust.com/Lakeside_721_2_Shelf_Heavy_Duty_Utility_Cart_p/lak-721.htm

1)無中繼組(用作window.postMessage targetOrigin),不能發送跨域消息

2)參數無效。 jquery.min.js

任何想法第一個錯誤意味着什麼?我用最新的版本切換了我的jQuery版本,它仍然執行相同的操作。

UPDATE我已經更新了我的jquery.min.js到最新的它,我想出了這是頁面停止加載的位置......在jquery-latest.min.js中彈出無效參數後,線16字符15511,其是下列字母 'b':

finally{b=[e,f],c=0}}return this} 
+1

展望。我目前正在嘗試解決類似的問題,Google網站管理員論壇*似乎沒有正確的答案。要爲此開始賞金。 * http://www.google.com/support/forum/p/Webmasters/label?lid=1f91cc0e87a8ed93&hl=zh-CN – psema4

+4

從縮小的「jquery.min.js」進行調試幾乎沒有意義。嘗試包括完整的'jquery.js'並共享調試。 – cheeken

+1

IE7不支持window.postMessage – epascarello

回答

10

DEMOhttp://so.devilmaycode.it/javascript-errors-no-relay-set-only-in-ie-7-8/

  • 1) - ñ O繼電器設置(用作window.postMessage targetOrigin),不能發送

通過您網站上的<g:plusone />按鈕造成的跨域消息:(google is busy of this notice) 的唯一途徑,我發現circumnvent這個問題是做這樣的事情:

$(function() { 
    setTimeout(function() { 
     gapi.plusone.render("plusone-div"); 
    }, 
    1500); 

}); 

  • 2) - INVA蓋論點。 jquery.min.js

尋找你的源代碼是一個混亂! ;-) OMG

  • 你有很多的錯誤像(缺少指定http://協議):

  • 不同的文件夾案例名稱,如/v/newsite//v/Newsite/,如果你是在尼克斯,但因爲這真的很重要你正在使用ASP ...

  • 這樣的代碼AttachEvent(window, 'load', store_init);而使用jquery像jQuery(document).ready(function() {

  • 多個包含相同的文件(該文件是包含3次)/a/j/product_details.js

  • 大規模使用$(function(){ & $(document).ready(function(){ & $(window).load(function(){多次時只有一個需要;

  • JS global的所有頁面各處,頂部,中間和底部,他們應該留在所有頂級恕我直言...

  • 不同版本的jQuery在同時喜歡裝:jquery-1.4.4.min.js & jquery-1.6.2.js & 1.4.2/jquery.min.js一起

  • 輕微但總是蹩腳的,你有<meta /><link />和混合順序就像雞肉沙拉,他們應該留在順序元,鏈接和腳本<script />最好在頁面的末尾。

  • 缺失分號;四周;

  • 無感/惡意代碼像下面以及更多...


if (!/\/shoppingcart\.asp/i.test(window.location.pathname)) { 
    jQuery(document).ready(function() { 
     jQuery('a').each(AddCartLink) 
    }); 
} 

var global_Config_EnableDisplayOptionProducts = 'False'; 

var global_ImageSeed = 'test.jpg'; 
global_ImageSeed = global_ImageSeed.substring(... 

您的網站沒有任何錯誤:http://so.devilmaycode.it/javascript-errors-no-relay-set-only-in-ie-7-8/

什麼,我所做的是:

  1. 重新排序主標籤元,鏈接,腳本
  2. 去除低劣的小部件一樣前頁,谷歌,Facebook
  3. 「試圖」將所有的全局變量置頂;
  4. 評論說,導致TopScriptsTEST5.js這個文件是你的主要問題鉻問題的代碼部分,(你應該看到的代碼的大塊評論)
  5. 刪除重複的文件包括,
  6. 刪除了最新版本的jquery,因爲我強烈懷疑所有其他代碼都使用最新的jquery版本,所以請使用1-4-4代替
  7. 其他一些修復程序在這裏和那裏...沒有什麼特別的

希望這個體檢幫助了一點,但我認爲你需要通過源該鏈接我看到你正在使用谷歌的+1按鈕驅魔;-)

+10

在你的第一點上突然冒出一個挑戰:用//開始一個url是完全正確的,它將使用與它所在的頁面相同的方案。非常方便,如果你有你的網頁的http和https版本,並且想要確保在同一協議中包含絕對URL。 –

+0

@Michael Stum:哇,從來不知道!謝謝先生! ;-) –

+0

好東西,謝謝你的回覆!我正在使用Volusion購物車,不幸的是他們會把各種東西扔到那裏,我無法刪除甚至修改。我自己創建的唯一代碼(我基本上每天都進行編輯,這就是爲什麼它現在還沒有MINIFIED)是TopScripts(現在是TopScriptsV2)。但那是在我的主網站上,www.BASequipment.com。大多數問題都是Volusions自己的代碼,我不能修改!設想 - >文件管理器 - >選擇框 - > vspfiles/templates/YOUR-THEME-ID/* .html,* .js在您的控制面板中設想.. – ToddN