亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > VBScript > 正文

在 HTA 中暫停腳本的方法

2020-07-26 12:03:16
字體:
來源:轉載
供稿:網友
問:
您好,腳本專家!如何在 HTA 中暫停腳本?
-- TJ
答:
您好,TJ。您知道,從古至今,人們已經花費了巨大的時間和精力來探索生命的意義。腳本專家卻從未參與其中。為什么?好吧,先不說懶,我們知道那無關緊要:就算您的確找到了生命的意義,也沒人在乎它。沒人想知道我們存在的理由;相反,他們 - 同您一樣 - 只想知道到底如何才能暫停一個嵌入在 HTML 應用程序 (HTA) 中的腳本。那才是腳本專家為之獻身的事業。 
現在,如果您不熟悉 HTA,您首先想到的可能是“使用 Wscript.Sleep 即可”。(順便說一句,如果您不熟悉 HTA,可以瀏覽 HTA Developers Center(英文)。)這是個好主意,但卻無法實現。為什么?因為 Wscript 對象是個稍微有些獨特的對象;原因之一是您實際上并不能創建此對象的實例。而只要您運行在 Windows Script Host 之下,Wscript 即會自動為您提供。問題就在這里:當您在 HTA 內部運行代碼時,您并沒有運行在 Windows Script Host 之下。您其實是運行在 Internet Explorer 所提供的腳本宿主之下。因為您沒有運行在 Windows Script Host 之下,因此您無法自動訪問 Wscript 對象,而且因為您無法創建自己的 Wscript 對象,也就無法訪問 Wscript.Sleep。用高科技術語來講,就是“癱瘓”了。
如果 Internet Explorer 提供類似于 Wscript.Sleep 的方法,則這也不是什么大不了的問題;很不幸,它沒有提供。那么是否有某種神奇的解決方法,我們可以使用它來代替 Sleep 方法呢?這有必要問嗎?

[Ctrl+A 全選 注:引入外部Js需再刷新一下頁面才能執行]

我們的 HTA 非常簡單:它只由一個按鈕組成,單擊時會運行名為 Test 的子例程。很了不起,對不對?好吧,我們先看看 HTA 的 <SCRIPT> 部分,然后再確定它是不是真的很了不起。
我們在 <SCRIPT> 部分所做的第一件事就是聲明一個名為 dtmStartTime 的全局變量:
Dim dtmStartTime
這其實對于暫停腳本沒有任何作用;我們只是利用此變量幫助我們查看腳本是否的確象所期待的那樣暫停。如果您現在還沒有明白其含義,別急:很快就會清楚。
接下來是 Test 子例程,在我們單擊按鈕時調用它:
Sub Test
    dtmStartTime = Now 
    idTimer = window.setTimeout("PausedSection", 5000, "VBScript")
End Sub
請注意,此子例程中僅有兩行代碼。在第一行中,我們只是將當前的時間和日期(使用 Now 函數)賦予變量 dtmStartTime。接下來是下面這行代碼:
idTimer = window.setTimeout("PausedSection", 5000, "VBScript")
無論您相信與否,這就是我們實現 Sleep 方法函數的方式。我們使用 setTimeout 方法創建了一個定時器,其 ID 為 idTimer。正如您所看到的,我們將三個參數傳遞給 setTimeout:
? PausedSection。此參數為定時器到時后我們要運行的子例程的名稱。
? 5000。此參數為在調用 PausedSection 之前我們希望定時器等待的時間(以毫秒計;5000 毫秒等于5 秒)。換句話說,這就是我們需要的暫停。如果需要將腳本暫停 30 秒,則可將此參數設置為 30000。
? VBScript。此參數是必需的,它只是告訴腳本 PausedSection 是用 VBScript 編寫的。
即,我們單擊按鈕時,Test 子例程將運行。Test 子例程運行時,它將創建名為 idTimer 的定時器。idTimer 的唯一功能就是等待 5 秒然后調用子例程 PausedSection。明白了嗎?好的。
那么子例程 PausedSection 執行什么操作?顯然,我們可以運行任何希望的代碼;簡單起見,在此我們僅做兩件事情。首先,顯示一個消息框,它顯示我們單擊此按鈕的時間及消息框自身實際顯示在屏幕上的時間:
Msgbox dtmStartTime & vbCrLf & Now
若允許舍入誤差,這兩個時間的間隔應為 5 秒。這重要嗎?當然重要。請記住,在 PausedSection 子例程內部首先發生的就是顯示此消息框。如果此消息框在我們單擊按鈕 5 秒之后顯示,則表明我們的腳本暫停了 5 秒。您可能會記起,這就是我們的最終目的。
我們在 PausedSection 子例程中要做的另外一件事情就是調用 clearTimeout 方法來有效地清除定時器:
window.clearTimeout(idTimer)
為什么這樣做?原因很簡單:定時器是設計為永遠運行的。如果不清除定時器,每 5 秒鐘 idTimer 就將調用 PausedSection 子例程一次,因此每 5 秒鐘我們的這個小消息框就會在屏幕上彈出一次。我們真的不希望每 5 秒鐘就看到這樣的消息框,因此使用 clearTimeout 刪除定時器。
我們承認,這確實不如使用 Wscript.Sleep 5000 那么簡單;這表明在您啟用和禁用定時器之前可能不得不稍稍掂量一番。因此,這或許帶點挑戰,但是,別忘了,這不也是生命的全部意義所在嗎?
不,這不是一個反問句。正如我們所說,我們一直致力于暫停 HTA;除此之外,我們就不知道生命到底是什么了。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
亚洲国产精品va在看黑人| 亚洲欧美在线一区| 国产精品高潮呻吟视频| 欧美电影在线观看高清| 久久全球大尺度高清视频| 精品国产一区二区三区久久狼5月| 久久香蕉频线观| 色偷偷9999www| 亚洲码在线观看| 日韩中文字幕视频在线观看| 欧美日韩精品在线观看| 日韩av资源在线播放| 中文字幕av一区中文字幕天堂| 精品五月天久久| 欧美极品少妇xxxxⅹ裸体艺术| 最新69国产成人精品视频免费| 欧美国产高跟鞋裸体秀xxxhd| 日韩精品视频在线播放| 中文字幕亚洲在线| 欧美日韩亚洲高清| 亚洲美女自拍视频| 国产精品69久久| 国产精品福利小视频| 欧美日韩一区二区三区| 亚洲a在线播放| 国产精品日韩欧美大师| 亚洲精品自拍视频| 国产婷婷成人久久av免费高清| 欧美性xxxxxxx| 欧美精品xxx| 欧美在线观看日本一区| 国产精品青草久久久久福利99| 亚洲影视中文字幕| 精品视频在线观看日韩| 夜夜躁日日躁狠狠久久88av| 麻豆乱码国产一区二区三区| 久久夜色精品国产| 欧美日本精品在线| 久久激情五月丁香伊人| 国产日韩在线亚洲字幕中文| 国产精品久久一区主播| 欧美网站在线观看| 亚洲成人激情在线| 国色天香2019中文字幕在线观看| 91香蕉嫩草影院入口| 欧美野外猛男的大粗鳮| 亚洲精品免费在线视频| 久久av红桃一区二区小说| 亚洲精品乱码久久久久久按摩观| 亚洲欧美日韩高清| 2021国产精品视频| 欧美国产日韩一区二区在线观看| 国产日韩专区在线| 国产精品入口福利| 精品国产一区久久久| 欧美午夜性色大片在线观看| 岛国av一区二区三区| 青青久久av北条麻妃海外网| 日韩精品中文字幕久久臀| 38少妇精品导航| 亚洲国产女人aaa毛片在线| 欧美日韩人人澡狠狠躁视频| 国产精品免费一区二区三区都可以| 国产精品com| 亚洲国产中文字幕在线观看| 久久久成人av| 国产精品久久久久一区二区| 亚洲专区国产精品| 国产精品美女主播在线观看纯欲| 欧美日韩一区免费| 亚洲理论在线a中文字幕| 成人性生交大片免费看小说| 亚洲国模精品私拍| 欧美日本啪啪无遮挡网站| 色狠狠av一区二区三区香蕉蜜桃| 黄色精品在线看| 欧美日韩美女视频| 亚洲人成在线观看网站高清| 国产精品扒开腿做| 国产精品成人一区| 欧美三级欧美成人高清www| 91精品国产综合久久男男| 4p变态网欧美系列| 91九色国产社区在线观看| 国产精品av网站| 欧美性猛交xxxx乱大交蜜桃| 久久人人爽人人爽人人片亚洲| 亚洲天堂开心观看| 亚洲福利在线视频| 日韩中文字幕在线播放| 色偷偷亚洲男人天堂| 国产脚交av在线一区二区| 一区二区三区天堂av| 亚洲最新av在线网站| 欧美高清在线视频观看不卡| 91精品国产精品| 亚洲国模精品一区| 精品亚洲男同gayvideo网站| 久色乳综合思思在线视频| 国产成人亚洲综合91| 日本国产一区二区三区| 国产精品第2页| 亚洲第一精品自拍| 欧美成人合集magnet| 久久精品国产99国产精品澳门| 亚洲一区av在线播放| 91久久精品在线| 久久久久久久电影一区| 国产高清在线不卡| 亚洲欧美日韩中文在线制服| 久久久91精品| 欧美国产日产韩国视频| 亚洲欧美一区二区三区情侣bbw| 国产精品精品视频一区二区三区| 日韩中文字幕久久| 自拍偷拍免费精品| 亚洲国产精久久久久久久| 亚洲欧美在线一区| 亚洲一区二区三区在线免费观看| 国产精品99免视看9| 亚洲天堂网在线观看| 久久人91精品久久久久久不卡| 中文字幕欧美视频在线| 亚洲国产97在线精品一区| 国产精品黄色影片导航在线观看| 日韩电影中文 亚洲精品乱码| 一个色综合导航| 日韩网站免费观看高清| 国产欧美日韩91| 国产99视频在线观看| 亚洲日韩第一页| 国产午夜精品一区二区三区| 欧美性黄网官网| 91午夜在线播放| 日韩欧美在线字幕| 成人有码在线视频| 欧美久久精品午夜青青大伊人| 91精品国产自产在线| 国产欧美日韩专区发布| 色一区av在线| 中文字幕亚洲一区二区三区五十路| 日韩欧美高清视频| 97超级碰在线看视频免费在线看| 另类视频在线观看| 久久久久久国产精品| 一区二区三区回区在观看免费视频| 成人免费观看49www在线观看| 欧美大胆在线视频| 97视频在线观看成人| 91精品中文在线| 亚洲欧美日韩网| 日韩高清不卡av| 欧美成人午夜视频| 午夜精品久久久久久久99热浪潮| 色婷婷**av毛片一区| 日韩电影免费在线观看| 亚洲综合在线播放| 日本中文字幕成人| 美女国内精品自产拍在线播放| 日韩亚洲第一页| 成人免费高清完整版在线观看| 97视频在线观看成人| 国产精品久久久久久久久久免费| 亚洲欧美自拍一区|