1
我已經排除故障,其中一個動態插入<script>
加載失敗本身並運行它的代碼只頁面被訪問每幾次的HTML頁面。什麼情況會導致IE8偶爾不加載腳本?
然而,在不被調試經驗豐富無比,我已經用完了的地方看看,或者需要檢查的事項或注意。
任何人都可以提出什麼情況或原因可能會導致IE8,但不 IE9,「忘記」運行動態插入,外部JavaScript文件只每隔幾互訪?
任何想法,將不勝感激。
UPDATE
按照要求,這裏是片段的簡化集合我有他們執行的方式:
CMS模板與加載頁面的Prototype.js在
<head>
- 我不能修改頭部。HTML只是內部
<body>
標籤是由瀏覽器解析:<!--[if (gte IE 6)&(lte IE 8)]> /* THE SCRIPT BELOW IS THE ONE RANDOMLY BEING DROPPED BY IE7/8 */ <script src="/file_uploads/selectivizr.js"></script> <![endif]--> <!--[if lt IE 9]> /* THESE SCRIPTS BELOW ALWAYS WORK, AND ARE NEVER DROPPED */ <script src="/file_uploads/html5.js"></script> <script src="/file_uploads/iemq.js"></script> <![endif]-->
頁面加載正常,
<script>
只是</body>
之前執行:<script type="text/javascript"> document.observe('dom:loaded', function() { var myContent = document.getElementById('myContent').innerHTML; document.body.innerHTML = myContent; // FYI: Excludes this script document.stopObserving("dom:loaded"); }); </script>
4:主體內容已現已被替換爲響應式佈局工作所需的內容。
注意:我們無法修改<head>
也不任何東西<body>
之外。
注意:selectivizr.js使用AJAX重新加載頁面上使用的所有外部CSS樣式表,並後處理DOM。
你如何添加該腳本?我們可以看到代碼嗎? – 2012-01-05 21:39:19
您可以在加載之前添加'javascript:alert('腳本加載')',並在確認腳本實際啓動並完成加載後添加'javascript:alert('腳本完成加載')''。如果您在腳本本身中添加更多警報,您可以通過這種方式進行調試,以查看其失敗的位置。 – Dallas 2012-01-06 03:07:47
@ ime-vidas剛剛添加了上下文/示例。 – atwixtor 2012-01-09 19:23:34