我有在頭調用的腳本,像這樣的頁面:歌劇:.js文件將不會加載
<script type="text/javascript" src="http://www.discoverfire.net/analytics/l/a.js"></script>
(請注意,您將無法加載這個腳本,因爲它是本地DNSd作爲分期域)
非常簡單。
對於這種基本的方形功能,Firefox,IE,Chrome都沒有問題。
但是,Opera拒絕加載腳本。其中的任何變量或函數都是「未定義的」,在蜻蜓中,腳本標記顯示在DOM中,但「腳本」選項卡顯示「未找到腳本文件」。
我去谷歌和找到隨機頁面,他們的外部.js文件似乎工作得很好。
任何想法爲什麼歌劇恨我?有沒有我缺少的安全/ JavaScript的東西?
幾件事情,可能是相關的,但真的應該沒有什麼區別:
- 腳本是比頁面不同的域。
- 該腳本僅適用於本地網絡。該域名在本地用於分級,從網絡外部指向其他地方。 Opera是否具有祕密使用外部DNS服務器的設置?
- 該腳本適用於所有其他瀏覽器。
- 問題不在腳本內容中。我已經將它簡化爲一行,並且在Opera中不起作用。
更新:
OK,這個問題似乎是歌劇如何處理領域。
我已經將腳本移動到其他幾個域,並且它工作得很好。我已將它移到本地DNS域上的多個路徑,並且它不會在該域的任何地方工作。
這使我相信,問題在於Opera無法或無法從某個原因加載該域中的腳本。
奇怪的是,從域中加載頁面和其他資源似乎沒有問題,問題僅在於.js文件。
該域名已註冊,但已停放。我們在本地對DNS進行了DNS處理,因此我們可以將它用於分段/測試,這可能會讓Opera以某種方式與JS安全性相混淆。
雖然我可能是錯的 - 我真的不知道。如果其他人有一個,我很樂意聽到它。
更新2:
關於蜻蜓和錯誤控制檯/開發者工具,他們不說對劇本的任何東西。對於腳本中應該存在的變量和函數,有很多未定義的變量錯誤,但除此之外,沒有錯誤。奇怪的是,腳本標籤確實顯示在DOMM中,但是如果我點擊腳本標籤,它會顯示「找不到腳本」。
更新3:
沒有阻止的內容,所以我們至少可以排除設置。
應...的script.js是什麼樣的路徑?你的意思是像「../script.js」這樣的相對路徑還是什麼? – jitter 2009-06-27 21:40:18