問:
你好,腳本專家!在我的一個腳本中,我顯示一個 HTML 頁面,其中包含我希望用戶閱讀的信息。當他們閱讀完該頁面之后,他們應該能按某個鍵使該網頁消失。然而,網頁并未消失,而是出現了一個消息框,提示說:“您正查看的網頁正嘗試關閉該窗口。是否要關閉該窗口?”然后,用戶必須單擊“是”,才能關掉這個網頁。如何解決該問題?
-- RR
答:
你好,RR。順便祝賀您:這是我們在“你好,腳本專家!”專欄中遇到的最長的問題了。不知道有沒有獎賞?沒有,但有一點可以肯定,有一天您可以把這件事講給您的孫子聽。
我們并沒有說它會給您的孫子留下印象。但是,如果您是像腳本專家這樣的人(但愿您不是),那么您決不會放過任何成績,哪怕微不足道。畢竟,如果沒有這些不給任何人留下印象的微不足道的成績,我們就寫不出年終總結啦!
無論如何,假定您有一個如下所示的 HTML 文件:
<BODY onkeypress='self.close()'>
Press any key to close this window.<BR>
</BODY>
當然,您的頁面可能更加富有奇思妙想,不過思路是一樣的:您已經獲得某種網頁,其中在 <BODY> 標記后附有 onkeypress 事件。如果此頁面是活動窗口且有人按了鍵盤上的任意鍵,就會運行下面的小腳本:
self.close()
這個小腳本將關閉該頁面。然而,正如您所注意到的,用戶將看到一個消息框出現,詢問他們是否確實要關閉該頁面。這是 Internet Explorer 中內置的一種安全措施:它主要為了防止他人編寫腳本來關閉您的網頁。但是,在此情況下,就會阻止任何人(包括您自己)使用腳本關閉頁面。(當然,您可以單擊“關閉”按鈕來關閉頁面。但很明顯,這不是您所要做的。)
那么,如何解決此問題?實際上,我們知道兩種解決此問題的方法。第一種方法是,您可以簡單地將文件擴展名從 .htm 更改為 .hta。如此一來,原本平淡無奇的 HTML 頁面就轉化為 亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb