本地html文件js被IE阻止的一些解決方法

還是做報表目錄的事,一個本地htm文件,網頁的樹形導航,鏈接到本地一些doc,xls等文件。

做完後發現在本地磁盤打開htm文件,每次IE都出信息欄:

google了下,說是xp sp2補丁後出來的這個,以前自己寫demo頁面時也出現過一般就點下完了

現在要給客戶用,總不能讓人每次都點吧,何況還不一定清楚怎麼設置。

解決辦法,一般是說可以通過加入保存位置來解決:

方法一:在htm文件<html>標記前加入 saved from  標記

==========================================
注意:您可以向本地 HTML 文件中添加一條“saved from URL”註釋,以指示 Internet Explorer 對本地計算機上的 HTML 內容應用其他區域的設置。例如,您可以向一個本地 HTML 文件中添加一條“saved from URL”註釋,以便可以將該 HTML 文件分配到 Internet 區域而不是本地計算機區域。如果您在 Internet 區域中允許腳本、簽名的 ActiveX 控件和 Java 小程序,那麼該本地 HTML 文件將使用這些縮減的安全權限運行。要指示 Internet Explorer 對名爲 Test.htm 的本地 HTML 文件使用 Internet 區域,請向 Test.htm 中添加以下注釋。請在 
<HTML> 標記前面單獨使用一行來添加該註釋。

<!-- saved from url=(0023)http://www.contoso.com/ --> 
其中,(0023) 值是它後面的 URL 的字符串長度,Contoso 是 Internet Web 站點的名稱。當 Internet Explorer 打開 Test.htm 時,Internet Explorer 將查找“saved from URL”註釋,並使用適合該 URL 的區域設置來確定對該 Web 頁應用哪種安全策略。 

 

加上後果然有效果,沒有信息欄提示,但是出現更大的問題:所有鏈接到本地文件的鏈接都失效了,

點擊無效,右鍵“另存爲”可以,右鍵“新窗口打開”都沒反應了。

IE既然已經將你的本地htm應用了save from url所在區域的設置,

再訪問本地文件就存在安全風險,被直接xxoo了。

無奈,只好繼續尋找其他辦法。

方法二:比較囧,提示用戶點信息欄好了。

<div id="divAlert">
<br/>您好,很抱歉您的IE瀏覽器設置似乎阻止了頁面正常顯示,請點擊上方的白條: <br/><br/>
<img src='img/IEInfo.jpg'><br/><br/>
選擇“允許阻止的內容”,然後在彈出的窗口中
<br/><br/>
<img src='img/IEConfirm.jpg'><br/><br/>
選擇“是”,即可查看正常的瀏覽數據。
<br/>&nbsp;</div>
<script>
divAlert.style.display
='none';
pnlExpand.style.display
='block';
</script>

 

效果如下,被阻止時,出來下面的界面,沒被阻止不顯示。

方法三:在IE選項裏面有設置“允許活動內容在我的計算機上的文件運行”,勾上,重啓IE就行了。

該設置可以通過註冊表修改,也就可以通過其他程序如啓動界面來修改:

[HKCU/Software
/Microsoft/Internet Explorer/Main/FeatureControl/FEATURE_LO-
CALMACHINE_LOCKDOWN],將右側的“iexplore.exe”的鍵值設爲0

優點是一針見血,一次設置好了,所有問題解決。

缺點是需要改動客戶端環境,而且可能造成安全風險。

 方法四:使用hta文件提升權限。

直接將本地htm文件後綴改成hta,不再提示阻止信息欄,但是頁面中有的js出問題了(tree的展開、關閉代碼在新窗口打開了...)

更好的辦法是hta文件只是個框架,裏面嵌套htm文件即可,hta文件:

 

<HTML>
<HEAD>
<TITLE>title</TITLE>
</HEAD> 
<body  scroll="no" style="margin:0px;padding:0px">
<iframe border=0px frameborder=0px src=index.htm width=100% height=100%></iframe>
</body>
</HTML>

 

這樣既不會出來js阻止信息欄,頁面中的js效果也沒有任何問題,唯一的缺點可能就是這個界面比較挫吧 :)

hta文件還有一些設置,有興趣的可以自己google下

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章