2014-02-07 106 views
0

我正在使用他們的演示代碼測試一個帶有highcharts的非常簡單的應用程序。IE只加載遠程託管的.js文件

當我在FF中加載演示它的作品。當我在IE中加載演示程序時,它不會,除非我使用遠程託管的jquery.min.js文件和highcharts.js文件。

我有jquery文件和highcharts.js保存在我的域名。它們都能夠在FF中正確使用。然而,當我在IE中加載頁面時,除非使用其他的輸出,否則我不會輸出。

我在服務器上的文件是一樣的。 THey顯然工作(FF),但由於某種原因,IE不喜歡他們。

爲了澄清,當我這樣做:

<script src="http://www.mydomain.com/jquery.js"></script> 
<script src="http://www.mydomain.com/highcharts.hs"></script> 

它工作在FF但不是在IE瀏覽器。

當我這樣做:

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.2/jquery.min.js"></script> 
<script src="http://code.highcharts.com/highcharts.js"></script> 

它工作在FF和IE瀏覽器也。

我有一個subittuted他們一次只能在IE瀏覽器,如果他們都是後者的版本。

爲什麼IE不希望運行的.js文件,如果我加載他們自己的域名,而不是裝載在別處託管的人?

+0

你在控制檯中有哪些錯誤?爲什麼使用highcharts.hs而不是js? –

回答

1

首先,您的高級JavaScript文件的擴展名有誤。它應該是/highcharts.js,而不是/highcharts.**hs**

對於自己的域名不需要絕對URL。

<script src="/jquery.js"></script> 
<script src="/highcharts.js"></script> 

確保您爲googleapis.com和highcharts下載了該腳本內容。

如果你在本地環境中測試http://www.mydoman.com/是毫無價值的。

您沒有腳本文件夾嗎?如果是這樣的src網址看起來像

<script src="/scripts/jquery.js"></script> 
<script src="/scripts/highcharts.js"></script> 
+0

我打錯了擴展名。 我使用的腳本版本正確,因爲它在Firefox中正常工作。當我嘗試在Internet Explorer中加載站點時,問題似乎就會發生。 – user3282030

0

我發現了什麼是錯的。

我已經添加以下代碼爲.htaccess防止其他網站使用我的.js:

RewriteCond %{HTTP_REFERER} !^$ 
RewriteCond %{HTTP_REFERER} !^http://(www\.)?mydomain\.com [NC] 
RewriteRule \.(js|css)$ - [F,NC,L] 

此代碼阻止我自己的.js在IE中使用,但不能在FF。不同的瀏覽器以不同的方式處理文件嗎?

當我從我的.htaccess文件中刪除該代碼時,網站按預期在FF和IE中加載。

這也解釋了爲什麼我的CSS是行不通的,除非我從外部源加載它(我用的是它有自己的CSS一個js手風琴)。我從該網站的另一篇文章中獲得了該代碼,並在FF中對其進行了測試,並假定它也可以在IE中使用。現在我將需要獲得新的.htaccess代碼,這也是IE友好的。