2014-01-05 101 views
4

我遇到了IE11的問題。它會在第一次運行js文件時顯示從javascript例程中獲得的數據。強制JavaScript文件在IE 11中刷新

更改頁面上的搜索參數應該重新運行js文件,但它不在IE11中。

這個問題在Firefox 26中沒有發生。另外,我可以通過在IE11中手動停止它,將我的IE選項改爲「檢查每次訪問時檢查更新版本的存儲頁面」。 雖然這對我來說很好,但它對用戶來說不是一個合理的解決方案。

將一個隨機數添加到javascript文件引用沒有任何影響。

我怎樣才能輕鬆地讓JavaScript文件重新加載其時間?

其他環境樣品包括:WebMatrix的C#,JSON,Bing地圖

+2

你主持這個JavaScript文件?您是否嘗試過設置過期和緩存控制最大年齡標頭? – pwdst

+2

[geek's answer](http://stackoverflow.com/a/20933145/413180)應該可以工作 - 您看到附加了隨機數的'.js'的HTTP響應代碼,並且請求的URL是否正確? – SilverlightFox

+2

如前所述,附加一個唯一的查詢字符串**是獲得全新響應的正確方法。也就是說,您應該檢查網絡流量以及此請求/響應的標題以獲取更多信息。請在這裏分享這些信息。另外,請確保查詢字符串對於每個請求**都是唯一的。 – Sampson

回答

1

在js文件的最後添加一些可變參數

<!--[if IE 11]> 
<script src="/my/js/javascriptfile.js?<?=somrandomnumber()?>"></script> 
<![endif]--> 
+1

從OP'將隨機數添加到JavaScript文件引用不會產生任何影響。「# –

+1

@geek Internet Explorer 10+不支持條件註釋。用戶使用C#,而不是PHP。 – Sampson