InternetExplorer.Application物件的Documen屬性及簡單應用
document 文擋物件 - JavaScript指令碼語言描述
---------------------------------------------------------------------
---------------------------------------------------------------------
注:頁面上元素name屬性和JavaScript引用的名稱必須一致包括大小寫否則會提示你一個錯誤資訊 "引用的元素為空或者不是物件"
---------------------------------------------------------------------
物件屬性
document.title //設定文件標題等價於HTML的<title>標籤
document.bgColor //設定頁面背景色
document.fgColor //設定前景色(文字顏色)
document.linkColor //未點選過的連結顏色
document.alinkColor //啟用連結(焦點在此連結上)的顏色
document.vlinkColor //已點選過的連結顏色
document.URL //設定URL屬性從而在同一視窗開啟另一網頁
document.fileCreatedDate //檔案建立日期,只讀屬性
document.fileModifiedDate //檔案修改日期,只讀屬性
document.fileSize //檔案大小,只讀屬性
document.cookie //設定和讀出cookie
document.charset //設定字符集 簡體中文:gb2312
---------------------------------------------------------------------
物件方法
document.write() //動態向頁面寫入內容
document.createElement(Tag) //建立一個html標籤物件
document.getElementById(ID) //獲得指定ID值的物件
document.getElementsByName(Name) //獲得指定Name值的物件
---------------------------------------------------------------------
images集合(頁面中的圖象)
a)通過集合引用
document.images //對應頁面上的<img>標籤
document.images.length //對應頁面上<img>標籤的個數
document.images[0] //第1個<img>標籤
document.images[i] //第i-1個<img>標籤
b)通過nane屬性直接引用
<img name="oImage">
document.images.oImage //document.images.name屬性
c)引用圖片的src屬性
document.images.oImage.src //document.images.name屬性.src
d)建立一個圖象
var oImage
oImage = new Image()
document.images.oImage.src="http://www.tongming.org/1.jpg"
//同時在頁面上建立一個<img>標籤與之對應就可以顯示
<html>
<img name=oImage>
<script language="javascript">
var oImage
oImage = new Image()
document.images.oImage.src="http://www.tongming.org/1.jpg"
</script>
</html>
----------------------------------------------------------------------
forms集合(頁面中的表單)
a)通過集合引用
document.forms //對應頁面上的<form>標籤
document.forms.length //對應頁面上<form>標籤的個數
document.forms[0] //第1個<form>標籤
document.forms[i] //第i-1個<form>標籤
document.forms[i].length //第i-1個<form>中的控制元件數
document.forms[i].elements[j] //第i-1個<form>中第j-1個控制元件
b)通過標籤name屬性直接引用
<form name="Myform"><input name="myctrl"></form>
document.Myform.myctrl //document.表單名.控制元件名
-----------------------------------------------------------------------
<html>
<!--Text控制元件相關Script-->
<form name="Myform">
<input type="text" name="oText">
<input type="password" name="oPswd">
<form>
<script language="javascript">
//獲取文字密碼框的值
document.write(document.Myform.oText.value)
document.write(document.Myform.oPswd.value)
</script>
</html>
-----------------------------------------------------------------------
<html>
<!--Select控制元件相關Script-->
<form name="Myform">
<select name="oSelect">
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
</select>
</form>
<script language="javascript">
//遍歷select控制元件的option項
var length
length=document.Myform.oSelect.length
for(i=0;i<length;i++)
document.write(document.Myform.oSelect[i].value)
</script>
<script language="javascript">
//遍歷option項並且判斷某個option是否被選中
for(i=0;i<document.Myform.oSelect.length;i++){
if(document.Myform.oSelect[i].selected!=true)
document.write(document.Myform.oSelect[i].value)
else
document.write("<font color=red>"+document.Myform.oSelect[i].value+"</font>")
}
</script>
<script language="javascript">
//根據SelectedIndex打印出選中的option
//(0到document.Myform.oSelect.length-1)
i=document.Myform.oSelect.selectedIndex
document.write(document.Myform.oSelect[i].value)
</script>
<script language="javascript">
//動態增加select控制元件的option項
var oOption = document.createElement("OPTION");
oOption.text="4";
oOption.value="4";
document.Myform.oSelect.add(oOption);
</script>
<html>
例:
function GetUrl(sURL)
With CreateObject("InternetExplorer.Application")
.Navigate sURL
Do While (.Busy Or .ReadyState <> 4)
Wscript.Sleep 100
Loop
For Each sLink In .Document.Links
output=output&"|"&sLink
Next
End With
GetUrl=output
End function
debug.writeline GetUrl(“http://www.baidu.com”)
InternetExplorer.Application物件的一些屬性
1、屬性
Active
屬性Active指明瞭應用程式是否處於活動狀態且擁有焦點。
DialogHandle
屬性DialogHandle提供使Delphi應用程式使用非Delphi對話方塊的一種機制。
ExeName
屬性ExeName包含了可執行的應用程式檔名極其路徑資訊。
Handle
屬性Handle提供了對應用程式主視窗控制代碼的訪問。
HelpFile
屬性HelpFile指明瞭應用程式用於顯示幫助內容的檔名。
Hint
屬性Hint指明瞭出現在幫助提示框(Help Hint box)中的文字字串。
HintHidePause
屬性HintHidePause 指定了滑鼠尚未從控制元件或選單項上移開、在隱藏幫助提示之前的時間間隔。
MainForm
屬性MainForm唯一標識了應用程式的主窗體。
ShowMainForm
屬性ShowMainForm確定了是否在應用程式啟動時顯示主窗體。
Terminated
屬性Terminated報告程式是否收到終止程式的Windows訊息WM_QUIT。
UpdateFormatSettings
屬性UpdateFormatSettings指明瞭當用戶改變系統配置時應用程式是否自動更新格式設定。
UpdateMetricSettings
屬性UpdateMetricSettings屬性指明是否對提示視窗字型和圖示標題等相關設定進行更新。
2、方法
BringToFront
方法BringToFront設定應用程式中最近一次的活動視窗到桌面上所有視窗的最前端。
CreateForm
方法CreateForm方法用於建立新的窗體(form)。
HandleException
方法HandleException為應用程式的異常提供預設的控制代碼。
UnhookMainWindow
UnhookMainWindow方法用於釋放由HookMainWindow方法掛在主窗體的程式。
-------------------------------------------------------------------------------------------------------------------------
InternetExplorer.Application的兩個簡單應用
應用一:自動登入163郵箱
MailID = "******" '賬號 PassWd = "*****" '密碼 Set ie = CreateObject("InternetExplorer.Application") ie.visible = True ie.navigate "http://mail.163.com/" 'While```Wend迴圈,當條件成立時迴圈 While ie.busy Or ie.readystate <> 4 Wend '等待IE載入完成 '賬號的對比好像還是不完善,想用echo進行顯示,但是報錯(不同賬號,同一密碼時,如果上一次登陸後沒有點選退出) if ie.document.getElementById("idInput").value = MailID Then Else '輸入賬號,如果賬號裡面有預設賬號則不輸入 ie.document.getElementById("idInput").value = "" ie.document.getElementById("idInput").value = MailID End If '如果預設賬號不是需要輸入的賬號,則清空重新輸入 ie.document.getElementById("pwdInput").value = PassWd '輸入密碼 ie.document.getElementById("LoginBtn").click '登入
readyState的5中狀態:
狀態 | 含義 |
0(未初始化) | 物件已建立,但是尚未初始化(尚未呼叫open方法) |
1(初始化) | 物件已建立,尚未呼叫send方法 |
2(傳送資料) | send()方法已呼叫,但是當前的狀態及http頭未知 |
3(資料傳送中) | 已接收部分資料,因為響應及http頭不全,這時通過responseBody和responseText獲取部分資料會出現錯誤 |
4(完成) | 資料接收完畢,此時可以通過通過responseBody和responseText獲取完整的迴應資料 |
getElementById的作用參見百科
程式碼中idInput獲得如圖:
pwdInput和LoginBtn同樣,如下圖:
應用二:讓ie如彈窗一樣從右下角彈出
'下邊這個htmlfile物件可以獲取顯示的有效高度和寬度(有效,就是螢幕解析度減去工作列的高度或者寬度)
avW= createobject("htmlfile").parentWindow.screen.availWidth
avH= createobject("htmlfile").parentWindow.screen.availHeight
'下邊這個internetExplorer.application物件是IE物件,功能強大
set roIe= Wscript.createobject("internetExplorer.application","IE_")
roIe.navigate("http://minisite.qq.com/gd/index.shtml") '''網咖應用時最好用內網的連線地址,要不可能很慢!
do
wscript.sleep 50
loop until roIe.readyState=4 ''readyState=4是等網頁全部顯示完成
with roIe
.Resizable = False ''定義新IE視窗不能拉伸
.width= 410 ''定義新IE的寬,依據你的web頁面自己調整
.height= 258 ''定義新IE的高,依據你的web頁面自己調整
.left= avW -410 ''定義新IE的出現的位置X,就是螢幕寬減去頁面寬
.top= avH ''定義新IE的出現的位置Y,就是螢幕高
.toolbar = False ''定義新IE是否顯示工具欄
.statusBar = False ''定義新IE是否顯示狀態列
.addressBar = False ''定義新IE是否顯示位址列
.visible= true ''定義新IE的顯示屬性
.Document.Title = "網咖---奧運訊息" ''定義新IE的Title
Do Until .ReadyState = 4 : WScript.Sleep 100 : Loop
end With
'下面的程式碼是讓新IE視窗冒泡顯示,自動關閉
CreateObject("Wscript.Shell").Appactivate roIe.Document.Title & " - " '啟用一個應用程式視窗,Title為標題
For i = avH To avH-258 Step - 1
roIe.top= i
wscript.sleep 10 ''調節冒泡速度,可調整這個
Next
wscript.sleep 20000 ''冒泡停留時間,可調整這個
For i = avH-258 To avH Step +1
roIe.top= i
wscript.sleep 10
Next
roIe.quit
set roIe = Nothing '斷開與物件的連結,釋放記憶體,在大型工程中非常重要的一環,好習慣
Sub IE_OnQuit() '這個子程式應該沒有被呼叫
Wscript.quit
End Sub
程式碼中的readState可參見上面解釋說明,do```loop until;do until```loop可參見百科,step可參見百科,with```end
with解釋如下(百度知道):
With 語句 在一個單一物件或一個使用者定義型別上執行一系列的語句。 語法 With object [statements] End With With 語句的語法具有以下幾個部分: 部分 描述 object 必要引數。一個物件或使用者自定義型別的名稱。 statements 可選引數。要執行在 object 上的一條或多條語句。 說明 With 語句可以對某個物件執行一系列的語句,而不用重複指出物件的名稱。例如,要改變一個物件的多個屬性,可以在 With 控制結構中加上屬性的賦值語句,這時候只是引用物件一次而不是在每個屬性賦值時都要引用它。下面的例子顯示瞭如何使用With 語句來給同一個物件的幾個屬性賦值。 With MyLabel .Height = 2000 .Width = 2000 .Caption = "This is MyLabel" End With 注意 當程式一旦進入With 塊,object 就不能改變。因此不能用一個 With 語句來設定多個不同的物件。 可以將一個With 塊放在另一個之中,而產生巢狀的 With 語句。但是,由於外層 With 塊成員會在內層的 With 塊中被遮蔽住,所以必須在內層的 With 塊中,使用完整的物件引用來指出在外層的 With 塊中的物件成員。 重點 一般來說,建議您不要跳入或跳出With 塊。如果在 With 塊中的語句被執行,但是 With 或 End With 語句並沒有執行,則一個包含對該物件引用的臨時變數將保留在記憶體中,直到您退出該過程。。 ======================================================================= 說白了就是簡化物件屬性的寫法,在with....end with間可以只寫.屬性=xx一些迴圈的語法可參見之前的部落格VBS學習日記(二)基礎知識
相關推薦
InternetExplorer.Application物件的Documen屬性及簡單應用
InternetExplorer.Application物件的Documen屬性(轉帖) document 文擋物件 - JavaScript指令碼語言描述 --------------------------------------------------------
SpringMVC配置及簡單應用
新的 bat pan start rop jstl cast 版本 ans 1.在web.xml中配置前端控制器 <servlet> <servlet-name>springmvc</servlet-name> <servl
達內科技NTD1712華為vlan定義,及簡單應用
system blog interface config ethernet 地址 col tag efault Vlan的定義:是物理設備上連接的不受物理限制的用戶的一個邏輯組。 Vlan的作用:交換機可以分割沖突域,但不能分割廣播域,為了解決這個問題,
Tesseract 在 windows 下的安裝及簡單應用
打開 版本信息 文本 否則 選擇 分享 16px alt 運行 Tesseract 是一個開源的 OCR 引擎,可以識別多種格式的圖像文件並將其轉換成文本,最初由 HP 公司開發,後來由 Google 維護。下載地址:https://digi.bib.uni-mannhei
ETCD叢集安裝配置及簡單應用
環境配置 CentOS Linux release 7.3.1611 (Core) etcd-v3.2.6 192.168.108.128 節點1 192.168.108.129 節點2 192.168.108.130 節點3 ETCD
Eureka概念及簡單應用
1、為什麼使用Eureka? 在Spring Cloud中我們經常使用Eureka,是因為SpringCloud對Eureka支援力度非常大 ,Eureka的社群活躍多較高,版本更新的速度快。 Eureka簡介: Eureka是Netflix開發的服務發現元件,
使用python操作redis及簡單應用
redis 連線例項是執行緒安全的,可以直接將redis連線例項設定為一個全域性變數,直接使用. pip install redis import redis >> r = redis.Redis(host='localhost',port=6379,password='', db=0
串:串的基本定義及簡單應用魔王語言
串 串,於我的理解就是字串 一般認為有三種儲存方式:定長順序串,堆串,塊鏈串(個人認為比較雞肋)。定長順序串類似於普通字串,同陣列的大小一樣最長長度固定。堆串儲存在堆中,空間大小可重新分配。塊鏈串類似於連結串列,是極端節省空間的堆串。 定長順序串與堆串應用較多,定長順序串的一些操作存
Weka安裝及簡單應用
因為前段時間上課有接觸WEKA這個軟體 ,寫了一個實驗報告,特此把它貼出來,希望能對大家有所幫助~ 一、Weka介紹 1、Weka簡介 Weka是懷卡託智慧分析環境(Waikato Environment for Knowledge Analysis)的英文字首縮寫,在
vs 2017新增Report Viewer控制元件及簡單應用
安裝完vs2017之後我們進行新增Report Viewer控制元件: 1. 點選Tools -> Extensions and Updates... 2. 在新視窗搜尋欄中輸入rdlc後
Python學習筆記----Numpy基礎(陣列物件的屬性及陣列建立)
Numpy是Python的一種開源的數值計算擴充套件,這種工具可以用來儲存和處理大型矩陣,比Python自身的巢狀列表結構高效的多。 Numpy的主要物件是同構多維陣列(ndarray),它是一個元素表,所有元素都是相同的資料型別,由正整數元組索引。 下面列舉一些nd
【Spring訊息】RabbitMq安裝及簡單應用(二)
前言: 埋頭苦寫。先把官方文件翻譯過來。整個流程跑一遍。上一篇文章,【Spring訊息】RabbitMq安裝及簡單應用(一),把點對點發送訊息寫完了。之前雖然也可以一個生產者多個消費者,但是一條訊息只能被一個消費者處理,所以是點對點。這篇文章來講講釋出訂閱,一對多。一條訊息
深度學習介紹及簡單應用
引言 深度學習背後的主要原理是從大腦中汲取靈感。,這種觀點產生了“神經網路”術語,大腦包含數十億個神經元,它們之間有數萬個連線。 在許多情況下,深度學習演算法類似於大腦,因為大腦和深度學習模型都涉及大量的計算單元(神經元),這些單元在未啟用時並不是活躍的,它們彼此互動時會變得智慧化。 神經元 神經網路
【舊文章搬運】ZwQuerySystemInformation枚舉內核模塊及簡單應用
接下來 smo and obj 基址 add dwr 調用 mit 原文發表於百度空間,2008-10-24========================================================================== 簡單說,即調用
jquery datatables各引數詳細說明及簡單應用
v1.9.0下載後,將media資料夾裡面的css,images,js資料夾拷貝到你的網站即可。接下來引入以下內容: <style type="text/css" title="currentStyle"> @import "./style/datatable/css/de
js刪除物件的屬性及封裝方法
javascript中可以通過delete刪除物件的屬性: 使用方法如下:var obj={}; obj.pro="del"; delete obj.pro; //或者 delete obj[pro] //該操作具有返回值 刪除成功為true失敗為false為了便於使用封裝成
POI入門及簡單應用
由於工作的需要,學習了一下POI, Apache POI是Apache軟體基金會的開放原始碼函式庫,POI提供API給Java程式對Microsoft Office格式檔案讀和寫的功能。 那麼我們怎麼使用POI呢?POI的使用其實非常簡單,
人工智慧學習筆記-Theano介紹及簡單應用
1 Theano介紹和安裝 1.1 什麼是Theano Theano是一個較為老牌和穩定的機器學習python庫之一。Theano基於Python擅長處理多維陣列(緊密集成了Numpy),屬於比較底層的框架,theano起初也是為了深
GRUB原始碼概述及簡單應用
前言 第七章之後的是針對一些小應用的修改。 [編輯] 概述 以下是我畢業論文的一部分:)對grub原始碼進行了一些分析,其實也沒有什麼新的東西,基本上是對斑竹的一個總結,然後細化了一些內容。可能有些不對的地方還請各位指正。 [編輯] GRUB整體分析 總體上我們
window 物件的屬性及方法
window物件集合frames[]:返回視窗中所有命名的框架。該集合是 Window 物件的陣列,每個 Window 物件在視窗中含有一個框架或 <iframe>。屬性 frames.length 存放陣列 frames[] 中含有的元素個數。注意,frames