烏賊先生のプログラミング道場
プログラミング資料

WEB操作

§ WEB操作詳細 §

MSHTML

MSHTMLライブラリとMicrosoft HTML Object LibraryとSHDocVwライブラリ
mshtml名前空間
IHTMLEventObjインターフェース


 MSHTMLライブラリとMicrosoft HTML Object LibraryとSHDocVwライブラリ

Microsoft HTML Object Library

HTML DOMにアクセスする為のオブジェクトライブラリで有る。

必要な参照の追加:【COM】Microsoft HTML Object Library

MSHTMLライブラリ

MSHTMLとは、Internet Explorer(IE)の機能をコンポーネント化(部品化)した物で有る。此のコンポーネントを利用すると、HTMLファイルと謂うプレーンなテキスト文書をオブジェクトと仕て扱う事が出来る。

MSHTMLは、大別して、HTMLパーサとHTMLレンダリングエンジンから構成されて居る。HTMLパーサは、HTMLの構文を解析し、プログラムから利用し易い様に、HTML文書の情報を階層構造化する。亦、HTMLレンダリングエンジンは、人間が解読し難いタグ文書を表や画像等の形にレンダリングし、人間が閲覧し易い形で表示を行う。

必要な参照の追加:【.NET】Microsoft.mshtml

SHDocVwライブラリ

SHDocVwとは、IEのブラウザ機能にアクセスする為のコンポーネントで有る。此のコンポーネントを利用すると、IEを操作する事が出来る。

必要な参照の追加:【COM】Microsoft Internet Controls

サンプルコード

MSHTMLライブラリとSHDocVwライブラリとを利用すれば、IEを起動して特定のページを開き、開いたページを操作する事が出来る。

下記に、Webブラウザコントロール(SHDocVwライブラリ)を併用したコード例を示す。猶、IEのインスタンス作成に、CreateObeject関数を使用する事も出来る。

Visual Basic 2005/2008/2010
Private Sub btnIE_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) _
  Handles btnIE.Click
  
  ' Internet Explorerの起動
  Dim IE As SHDocVw.InternetExplorer
  IE = New SHDocVw.InternetExplorer()
  IE.Visible = True
  
  ' Googleページの表示
  IE.Navigate("http://www.google.ne.jp")
  Do Until IE.ReadyState = SHDocVw.tagREADYSTATE.READYSTATE_COMPLETE
    Application.DoEvents()
  Loop
  
  ' WEBページの操作
  Dim Doc As mshtml.HTMLDocument
  Dim Inp As mshtml.HTMLInputElement
  Doc = IE.Document
  For Each Inp In Doc.all.tags("input")
    If Inp.name = "q" Then
      Inp.value = "烏賊の王様"
      Exit For
    End If
  Next
End Sub
Visual C# 2005/2008/2010
private void btnIE_Click(object sender, EventArgs e)
{
  // Internet Explorerの起動
  SHDocVw.InternetExplorer ie;
  ie = new SHDocVw.InternetExplorer();
  ie.Visible = true;
  
  // Googleページの表示
  object u, p = null, h = null, f = null, t = null;
  u = "http://www.google.ne.jp";
  ie.Navigate2(ref u, ref f, ref t, ref p, ref h);
  while (ie.ReadyState != SHDocVw.tagREADYSTATE.READYSTATE_COMPLETE) {
    Application.DoEvents( );
  }
  
  // WEBページの操作
  mshtml.HTMLDocument doc;
  doc = (mshtml.HTMLDocument)ie.Document;
  foreach (mshtml.HTMLInputElement inp in doc.getElementsByTagName("input")) {
    if (inp.name == "q") {
      inp.value = "烏賊の王様";
      break;
    }
  }
}

上記のコードでは、下記の参照を追加する必要が有る。
Microsoft Internet Controls 1.1(shdocvw.dll)の参照を追加【COM】
Microsoft.mshtml 7.0.3300.0(Microsoft.mshtml.dll)の参照を追加【.NET】

使用後は、下記の様にCOMオブジェクトを開放する事!
System.Runtime.InteropServices.Marshal.ReleaseComObject(doc);
System.Runtime.InteropServices.Marshal.ReleaseComObject(ie);


 mshtml名前空間





MSHTMLに依るプログラミング

フォームを持つWindowsアプリケーションからInternet Explorer(WebBrowser)を制御する方法は、下記の3種に大別する事が出来る。

  1. System.Windows.Forms名前空間のWebBrowserクラスを使い、HTMLの解析も此の名前空間のクラス(HtmlDocumentクラスやHtmlElementクラス等)を使用する。

  2. System.Windows.Forms名前空間のWebBrowserクラスを使い、MSHTML.DLL(Microsoft HTML Object Library)を参照設定して、HTMLの解析はMicrosoft.mshtml名前空間のクラスを使用する。

  3. COMのSHDocVw.DLL(Microsoft Internet Controls)、MSHTML.DLL(Microsoft HTML Object Library)の2個を参照設定し、Interop.SHDocVwのWebBrowserクラスを使い、HTMLの解析はMicrosoft.mshtml名前空間のクラスを使用する。

上記1の方法は、最もRAD(Rapid Application Development)な方法で、殆どの場合、此の方法で事足りる。ページの表示を仕度く無い場合は、WebBrowserコントロールのVisibleプロパティをFalseに設定するか、フォームの枠外に配置すれば良い(尤も、開発中は、画面を眼で確認し乍の方が効率が良い事が多いと思われる)。

併し、.NET Frameworkのクラスでは、総ての機能が提供されて居る訳ではない。良く使用されると思われる機能丈が提供されて居るので、特殊な機能を必要とする場合は、上記2や3の方法を採る必要が有る事も有る。

其処で、其の特殊な用途の為に、Microsoft HTML Object Library(mshtml.dll)を使用したコード例を、以下に示す。

MSHTMLのオブジェクト群に対する参照の設定を行う為には、先ず、メニューのプロジェクトから参照の追加を選択し(ソリューションエクスプローラのプロジェクトや参照設定の右クリックでも可)、次に、参照の追加ウィンドウで、COMコンポーネントの中から、Microsoft HTML Object Libraryを追加する。

下記に、MSHTMLでURLからHTMLドキュメントを取得する基本的なコード例を示す。

Visual Basic 2005/2008/2010
' ボタン(Sample 4)がクリックされた時の処理
Private Sub btnSample4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) _
  Handles btnSample4.Click
  
  Dim RootDoc As mshtml.HTMLDocumentClass = New mshtml.HTMLDocumentClass()
  Dim Doc2 As mshtml.IHTMLDocument2 = RootDoc
  Dim Doc4 As mshtml.IHTMLDocument4 = RootDoc
  
  ' ドキュメントの生成
  Doc2.write("<html><body>KING OF SQUID</body></html>")
  Doc2.close()
  
  ' ドキュメントの読込
  Dim Doc As mshtml.HTMLDocument
  Doc = Doc4.createDocumentFromUrl("http://www.google.ne.jp", "")
  Dim I As Integer = 0
  Do Until doc.readyState = "complete"
    I += 1
    If I > 50 Then
      ' 時間切れ
      MessageBox.Show("タイムアウトしました")
      Return
    End If
    System.Threading.Thread.Sleep(100)
    System.Windows.Forms.Application.DoEvents()
  Loop
End Sub
Visual C# 2005/2008/2010
// ボタン(Sample 4)がクリックされた時の処理
private void btnSample4_Click(object sender, EventArgs e)
{
  mshtml.HTMLDocumentClass rootdoc = new mshtml.HTMLDocumentClass();
  mshtml.IHTMLDocument2 doc2 = rootdoc;
  mshtml.IHTMLDocument4 doc4 = rootdoc;
  
  // ドキュメントの生成
  doc2.write("<html><body> </body></html>");
  doc2.close();
  
  // ドキュメントの読込
  mshtml.HTMLDocument doc =
  doc4.createDocumentFromUrl("http://www.google.ne.jp", null) as mshtml.HTMLDocument;
  int i = 0;
  while (doc.readyState != "complete")
  {
    if (++i > 50)
    {
      // 時間切れ
      MessageBox.Show("タイムアウトしました");
      return;
    }
    System.Threading.Thread.Sleep(100);
    System.Windows.Forms.Application.DoEvents();
  }
  
  // COMオブジェクトの破棄(使用後は必ず破棄してメモリリークを防止)
  System.Runtime.InteropServices.Marshal.ReleaseComObject(doc4);
  System.Runtime.InteropServices.Marshal.ReleaseComObject(doc2);
  System.Runtime.InteropServices.Marshal.ReleaseComObject(doc);
}

上記のコードでは、別段何かを行うと謂う訳ではない。MSHTMLでHTMLドキュメントの生成と、URLからHTMLドキュメントを取得する基本と成る方法を示して居る丈で有る。

MSHTMLでURLからHTMLドキュメントを直接取得する手順は、下記の通りで有る。

  1. 先ず、親と成るHTMLDocumentClassオブジェクト(上記のコードのRootDoc)を用意する。

  2. 次に、親と成るHTMLDocumentClassオブジェクトへの参照を格納したIHTMLDocument2オブジェクト(上記コードのDoc2)のwriteメソッドを使用して、HTMLドキュメントのインスタンスを生成する。

  3. 最後に、親と成るHTMLDocumentClassオブジェクトの参照を格納したIHTMLDocument4オブジェクト(上記コードのDoc4)のcreateDocumentFromUrlメソッドを使用して、指定したURLからページをダウンロードして、mshtml.HTMLDocumentオブジェクトに格納する。

面倒に思えるかも知れないが、総て必要な手続で有る。此れは、機能毎に部品を細分化して(オブジェクト指向)、保守性を高める為には、重要な事で有る。プリミティブなクラスを使用してプログラミングする時、煩雑さは避けられない事で有るが、必要な部品而巳を使用すると謂う利点も有る。勿論、実用性に問題が無ければ、便利なラッパークラスを使用すると謂う選択肢も有る。

下記に、リンクタグ(A要素)の一覧を取得するコード例を示す。

Visual Basic 2005/2008/2010
Private Sub btnSample5_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) _
  Handles btnSample5.Click
  
  Dim RootDoc As mshtml.HTMLDocumentClass = New mshtml.HTMLDocumentClass()
  Dim Doc2 As mshtml.IHTMLDocument2 = RootDoc
  Dim Doc4 As mshtml.IHTMLDocument4 = RootDoc
  
  ' ドキュメントの生成
  Doc2.write("<html><body>KING OF SQUID</body></html>")
  Doc2.close()
  
  ' ドキュメントの読込
  Dim Doc As mshtml.HTMLDocument
  Doc = Doc4.createDocumentFromUrl("http://www.google.ne.jp", "")
  Dim I As Integer = 0
  Do Until Doc.readyState = "complete"
    I += 1
    If I > 50 Then
      ' 時間切れ
      MessageBox.Show("タイムアウトしました")
      Return
    End If
    System.Threading.Thread.Sleep(100)
    System.Windows.Forms.Application.DoEvents()
  Loop
  
  ' Aタグの獲得
  lstInfo.Items.Clear()
  pnlInfo.Visible = True
  Dim Elms As mshtml.IHTMLElementCollection = Doc.getElementsByTagName("a")
  Dim Ee As System.Collections.IEnumerator = Elms.GetEnumerator()
  Do While Ee.MoveNext()
    Dim Elm As mshtml.HTMLAnchorElement = _
      DirectCast(Ee.Current, mshtml.HTMLAnchorElement)
    Dim S As String = Elm.href
    If S Is Nothing Then Continue Do
    lstInfo.Items.Add(S)
  Loop
End Sub
Visual C# 2005/2008/2010
// ボタン(Sample 5)がクリックされた時の処理
private void btnSample5_Click(object sender, EventArgs e)
{
  mshtml.HTMLDocumentClass rootdoc = new mshtml.HTMLDocumentClass();
  mshtml.IHTMLDocument2 doc2 = rootdoc;
  mshtml.IHTMLDocument4 doc4 = rootdoc;
  
  // ドキュメントの生成
  doc2.write("<html><body></body></html>");
  doc2.close( );
  
  // ドキュメントの読込
  mshtml.HTMLDocument doc = doc4.createDocumentFromUrl(
    "http://www.eonet.ne.jp/~squid1036/index.html", null) as mshtml.HTMLDocument;
  int i = 0;
  while (doc.readyState != "complete")
  {
    if (++i > 50)
    {
      // 時間切れ
      MessageBox.Show("タイムアウトしました");
      return;
    }
    System.Threading.Thread.Sleep(100);
    System.Windows.Forms.Application.DoEvents();
  }
  
  // Aタグの獲得
  lstInfo.Items.Clear();
  pnlInfo.Visible = true;
  mshtml.IHTMLElementCollection elms = doc.getElementsByTagName("a");
  System.Collections.IEnumerator ee = elms.GetEnumerator();
  while (ee.MoveNext())
  {
    mshtml.HTMLAnchorElementClass elm = (mshtml.HTMLAnchorElementClass)ee.Current;
    string s = elm.href;
    if (s == null) continue;
    lstInfo.Items.Add(s);
  }
}

下記に、ページを自動スクロールするコード例を示す。

Visual Basic 2005/2008/2010
Private Sub btnSample6_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) _
  Handles btnSample6.Click
  
  Dim Doc As mshtml.HTMLDocument = _
    DirectCast(webDisp.Document.DomDocument, mshtml.HTMLDocument)
  Dim Elm As mshtml.IHTMLElement2 = DirectCast(Doc.body, mshtml.IHTMLElement2)
  Elm.scrollTop = 300
End Sub
Visual C# 2005/2008/2010
// ボタン(Sample 6)がクリックされた時の処理
private void btnSample6_Click(object sender, EventArgs e)
{
  mshtml.HTMLDocument doc = (mshtml.HTMLDocument)webDisp.Document.DomDocument;
  mshtml.IHTMLElement2 elm = (mshtml.IHTMLElement2)doc.body;
  elm.scrollTop = 300;
}

イベントインターフェース

インターフェイス対象要素
HTMLAnchorEventsa要素
HTMLAnchorEvents2a要素
HTMLAreaEventsarea要素
HTMLAreaEvents2area要素
HTMLButtonElementEventsbutton要素
HTMLButtonElementEvents2button要素
HTMLControlElementEventsコントロール
HTMLControlElementEvents2コントロール
HTMLDocumentEventsdocumentオブジェクト
HTMLDocumentEvents2documentオブジェクト
HTMLElementEventsエレメント
HTMLElementEvents2エレメント
HTMLFormElementEventsform要素
HTMLFormElementEvents2form要素
HTMLFrameSiteEventsframe要素
HTMLFrameSiteEvents2frame要素
HTMLImgEventsimg要素
HTMLImgEvents2img要素
HTMLInputFileElementEventsinput(type=file)要素
HTMLInputFileElementEvents2input(type=file)要素
HTMLInputImageEventsinput(type=image)要素
HTMLInputImageEvents2input(type=image)要素
HTMLInputTextElementEventsinput(type=text)要素
HTMLInputTextElementEvents2input(type=text)素
HTMLLabelEventslabel要素
HTMLLabelEvents2label要素
HTMLLinkElementEventslink要素
HTMLLinkElementEvents2link要素
HTMLMapEventsmap要素
HTMLMapEvents2map要素
HTMLMarqueeElementEventsmarquee要素
HTMLMarqueeElementEvents2marquee要素
HTMLNamespaceEventsNAMESPACE要素
HTMLObjectElementEventsobject要素
HTMLObjectElementEvents2object要素
HTMLOptionButtonElementEventsoption要素
HTMLOptionButtonElementEvents2option要素
HTMLScriptEventsscript要素
HTMLScriptEvents2script要素
HTMLSelectElementEventsselect要素
HTMLSelectElementEvents2select要素
HTMLStyleElementEventsstyle要素
HTMLStyleElementEvents2style要素
HTMLTableEventstable要素
HTMLTableEvents2table要素
HTMLTextContainerEventsテキストコンテナ
HTMLTextContainerEvents2テキストコンテナ
HTMLWindowEventswindow要素
HTMLWindowEvents2window要素

イベント種類

属 性内 容
onabort画像のダウンロードを途中で中止した時に発生
onactivateオブジェクトがアクティブに成った時に発生
onafterprint印刷や印刷プレビューの直後に発生
onafterupdateデータバインド使用時にデータプロバイダへデータを送信した後に発生
onbeforeactivateオブジェクトがアクティブに成る直前に発生
onbeforecopy選択領域がクリップボードにコピーされる直前に発生
onbeforecut選択領域がクリップボードから切り取りされる直前に発生
onbeforedeactivateアクティブなカレントオブジェクトが非アクティブに成る直前に発生
onbeforeeditfocus編集可能要素がアクティブに成る直前に発生
onbeforepaste選択領域をクリップボードから貼り付ける直前に発生
onbeforeprint印刷や印刷プレビューの直前に発生
onbeforeunloadページがアンロードされる前に発生
onbeforeupdateデータバインド使用時にデータプロバイダへデータ送信し更新成功前に発生
onblurフォーカスを喪失した時に発生
onbounceMARQUEE要素が一方の端に到達した時に発生
oncellchangeデータプロバイダにデータ変更が有った時に発生
onchangeオブジェクトや選択領域の内容に変更が有った時に発生
onclickマウスの左ボタンを押して離した時に発生、又は、submitボタン以外のコントロールにフォーカスが有る時にENTERキーを押した時に発生、又は、フォームの各要素がフォーカスを得た時にSPACEキーを押した時等に発生
oncontextmenu右クリックでコンテキストメニューを表示する時に発生
oncontrolselectオブジェクトのコントロールを選択する時に発生
oncopyオブジェクトを選択してクリップボードにコピーした時に発生
oncutオブジェクトや要素が切り取りされた時に発生
ondataavailableデータソースオブジェクトからデータが送信される度に発生
ondatasetchangedデータソースオブジェクトから提供されるデータが変化した時に発生
ondatasetcompleteデータソースオブジェクトからデータを総て受け取った時に発生
ondblclickダブルクリックをした時に発生
ondeactivateアクティブな要素が非アクティブに成る時に発生
ondragドラッグ操作中に発生
ondragendドラッグ操作を終了しマウスを離した時に発生
ondragenterオブジェクト対象の要素にドラッグしてマウスを離した時に発生
ondragleaveドラッグ中のオブジェクトを対象外の処でマウスを離した時に発生
ondragover対象物の上でドラッグした儘の時に発生
ondragstart選択要素をドラッグ開始した時に発生
ondropドラッグ&ドロップ操作中、マウスボタンを離した時に発生
onerrorスクリプトエラーが発生した時に発生
onerrorload画像や其他のオブジェクトをロード中にエラーが発生した時に発生
onerrorupdateデータソースオブジェクトにデータを更新中にエラーが発生した時に発生
onfilterchangeフィルタが状態を変化したり変化終了時に発生
onfinishMARQUEEのループが完了した時に発生
onfocusフォーカスを得た時に発生
onfocusinフォーカス取得の為にアクティブに成る時に発生
onfocusout他の要素へフォーカスを動かした後に発生
onhelpブラウザ上でF1やHELPキーを押した時に発生
onkeydownキーボードキーを押した時に発生(キーコードを返す)
onkeypressキーボードキーを押した時に発生(キャラクタコードを返す)
onkeyupキーボードキーを離した時に発生(キーコードを返す)
onlayoutcomplete印刷や印刷プレビューでレイアウトフォーマットが完了した時に発生
onloadロード直後に発生
onlosecaptureマウスキャプチャーを喪失した時に発生
onmousedownマウスボタンを押した時に発生
onmouseenterオブジェクトにマウスポインタが入域した時に発生
onmouseleaveオブジェクトの外にマウスポインタを移動させた時に発生
onmousemoveマウスを動かした時に発生
onmouseout要素の範囲外にマウスを移動した時に発生
onmouseover要素内にマウスを移動した時に発生
onmouseupマウスボタンを離した時に発生
onmousewheelマウスのホイールボタンを廻した時に発生
onmoveオブジェクトが移動した時に発生
onmoveendオブジェクトの移動が終了した時に発生
onmovestartオブジェクトの移動が開始された時に発生
onpaste対象オブジェクトにクリップボードから貼り付けられた時に発生
onpropertychange属性(プロパティ)が変更した時に発生
onreadystatechangeオブジェクトの状態が変化した時に発生
onresetフォームのリセットボタンをクリックした時に発生
onresizeオブジェクトのサイズ(高さや幅)が変化した時に発生
onresizeendオブジェクトのサイズ変更を終了した時に発生
onresizestartオブジェクトのサイズ変更を開始した時に発生
onrowenterデータバインド使用時に現在行が変更され、新しいデータの有効化時に発生
onrowexitデータバインド使用時に現在行が変更される直前に発生
onrowsdeleteレコードセットから行が削除される時に発生
onrowsinsertedカレントレコードセットに新しい行が挿入された直後に発生
onscrollスクロールボックスが動かされた時に発生
onselect選択領域を変更した時に発生
onselectionchangeドキュメントの選択状態が変わった時に発生
onselectstart要素を選択し始める時に発生
onstartMARQUEEオブジェクトのループが開始した時に発生
onstopブラウザのストップボタンをクリックした時に発生
onsubmitフォームが送信される前に発生
onunloadオブジェクトがアンロードされる直前に発生

イベント適用要素

属 性適 用 要 素
onabortIMG
onactivateA, ACRONYM, ADDRESS, APPLET, AREA, B, BDO, BIG, BLOCKQUOTE, BODY, BUTTON, CAPTION, CENTER, CITE, CUSTOM, DD, DFN, DIR, DIV, DL, document, DT, EM, EMBED, FIELDSET, FONT, FORM, FRAME, FRAMESET, hn, HR, I, IFRAME, IMG, INPUT type=button, INPUT type=checkbox, INPUT type=file, INPUT type=hidden, INPUT type=image, INPUT type=password, INPUT type=radio, INPUT type=reset, INPUT type=submit, INPUT type=text, INS, ISINDEX, KBD, LABEL, LEGEND, LI, LISTING, MARQUEE, MENU, OBJECT, OL, P, PLAINTEXT, PRE, Q, RT, RUBY, S, SAMP, SELECT, SMALL, SPAN, STRIKE, STRONG, SUB, SUP, TABLE, TBODY, TD, TEXTAREA, TFOOT, TH, THEAD, TR, TT, U, UL, VAR, window, XMP,
onafterprintwindow,BODY,FRAMESET
onafterupdateA, BDO, BUTTON, CUSTOM, DIV, FRAME, IFRAME, IMG, INPUT type=checkbox, INPUT type=hidden, INPUT type=password, INPUT type=radio, INPUT type=text, LABEL, LEGEND, MARQUEE, RT, RUBY, SELECT, SPAN, TEXTAREA,
onbeforeactivateA, ADDRESS, APPLET, AREA, B, BDO, BIG, BLOCKQUOTE, BODY, BUTTON, CAPTION, CENTER, CITE, CODE, CUSTOM, DD, DFN, DIR, DIV, DL, document, DT, EM, EMBED, FIELDSET, FONT, FORM, hn, HR, I, IMG, INPUT, type=button, INPUT type=checkbox, INPUT type=file, INPUT type=image, INPUT type=reset, INPUT type=password, INPUT type=radio, INPUT type=submit, INPUT type=text, KBD, LABEL, LEGEND, LI, LISTING, MAP, MARQUEE, MENU, nextID, NOBR, OL, P, PLAINTEXT, PRE, RT, RUBY, S, SAMP, SELECT, SMALL, SPAN, STRIKE, STRONG, SUB, SUP, TABLE, TBODY, TD, TEXTAREA, TFOOT, TH, THEAD, TR, TT, U, UL, VAR, XMP,
onbeforecopyA, ADDRESS, AREA, B, BDO, BIG, BLOCKQUOTE, CAPTION, CENTER, CITE, CODE, CUSTOM, DD, DFN, DIR, DIV, DL, DT, EM, FIELDSET, FORM, hn, I, IMG, LABEL, LEGEND, LI, LISTING, MENU, NOBR, OL, P, PLAINTEXT, PRE, S, SAMP, SMALL, SPAN, STRIKE, STRONG, SUB, SUP, TD, TEXTAREA, TH, TR, TT, U, UL,
onbeforecutA, ADDRESS, APPLET, AREA, B, BDO, BIG, BLOCKQUOTE, BODY, BUTTON, CAPTION, CENTER, CITE, CODE, CUSTOM, DD, DFN, DIR, DIV, DL, document, DT, EM, EMBED, FIELDSET, FONT, FORM, hn, HR, I, IMG, INPUT type=button, INPUT type=checkbox, INPUT type=file, INPUT type=image, INPUT type=password, INPUT type=radio, INPUT type=reset, INPUT type=submit, INPUT type=text, KBD, LABEL, LEGEND, LI, LISTING, MAP, MARQUEE, MENU, nextID, NOBR, OL, P, PLAINTEXT, PRE, RT, RUBY, S, SAMP, SELECT, SMALL, SPAN, STRIKE, STRONG, SUB, SUP, TABLE, TBODY, TD, TEXTAREA, TFOOT, TH, THEAD, TR, TT, U, UL, VAR, XMP,
onbeforedeactivateA, ACRONYM, ADDRESS, APPLET, AREA, B, BDO, BIG, BLOCKQUOTE, BODY, BUTTON, CAPTION, CENTER, CITE, CUSTOM, DD, DFN, DIR, DIV, DL, document, DT, EM, EMBED, FIELDSET, FONT, FORM, FRAME, FRAMESET, hn, HR, I, IFRAME, IMG, INPUT type=button, INPUT type=checkbox, INPUT type=file, INPUT type=hidden, INPUT type=image, INPUT type=password, INPUT type=radio, INPUT type=reset, INPUT type=submit, INPUT type=text, INS, ISINDEX, KBD, LABEL, LEGEND, LI, LISTING, MARQUEE, MENU, OBJECT, OL, P, PLAINTEXT, PRE, Q, RT, RUBY, S, SAMP, SELECT, SMALL, SPAN, STRIKE, STRONG, SUB, SUP, TABLE, TBODY, TD, TEXTAREA, TFOOT, TH, THEAD, TR, TT, U, UL, VAR, window, XMP,
onbeforeeditfocusdefaults, A, ACRONYM, ADDRESS, APPLET, AREA, B, BDO, BIG, BLOCKQUOTE, BODY, BUTTON, CENTER, CITE, CODE, CUSTOM, DD, DEL, DFN, DIR, DIV, DL, document, DT, EM, FIELDSET, FONT, FORM, hn, I, INPUT type=button, INPUT type=checkbox, INPUT type=file, INPUT type=hidden, INPUT type=image, INPUT type=password, INPUT type=radio, INPUT type=reset, INPUT type=submit, INPUT type=text, INS, ISINDEX, KBD, LABEL, LEGEND, LI, LISTING, MARQUEE, MENU, NOBR, OBJECT, OL, P, PLAINTEXT, PRE, Q, RT, RUBY, S, SAMP, SELECT, SMALL, SPAN, STRIKE, STRONG, SUB, SUP, TABLE, TD, TEXTAREA, TR, TT, U, UL, VAR, XMP,
onbeforepasteA, ADDRESS, APPLET, AREA, B, BDO, BIG, BLOCKQUOTE, BODY, BUTTON, CAPTION, CENTER, CITE, CODE, CUSTOM, DD, DFN, DIR, DIV, DL, document, DT, EM, EMBED, FIELDSET, FONT, FORM, hn, HR, I, IMG, INPUT type=button, INPUT type=checkbox, INPUT type=file, INPUT type=image, INPUT type=password, INPUT type=radio, INPUT type=reset, INPUT type=submit, INPUT type=text, KBD, LABEL, LEGEND, LI, LISTING, MAP, MARQUEE, MENU, nextID, NOBR, OL, P, PLAINTEXT, PRE, RT, RUBY, S, SAMP, SELECT, SMALL, SPAN, STRIKE, STRONG, SUB, SUP, TABLE, TBODY, TD, TEXTAREA, TFOOT, TH, THEAD, TR, TT, U, UL, VAR, XMP,
onbeforeprintwindow,BODY,FRAMESET
onbeforeunloadBODY FRAMESET window
onbeforeupdateA, BUTTON, DIV, FRAME, IFRAME, IMG, INPUT type=checkbox, INPUT type=hidden, INPUT type=password, INPUT type=radio, INPUT type=text, TEXTAREA, LABEL, LEGEND, MARQUEE, SELECT, SPAN, BDO, CUSTOM, RT, RUBY,
onblurA, ACRONYM, ADDRESS, APPLET, AREA, B, BDO, BIG, BLOCKQUOTE, BUTTON, CAPTION, CENTER, CITE, CUSTOM, DD, DEL, DFN, DIR, DIV, DL, DT, EM, EMBED, FIELDSET, FONT, FORM, FRAME, FRAMESET, hn, HR, I, IFRAME, IMG, INPUT type=button, INPUT type=checkbox, INPUT type=file, INPUT type=image, INPUT type=password, INPUT type=radio, INPUT type=reset, INPUT type=submit, INPUT type=text, INS, ISINDEX, KBD, LABEL, LEGEND, LI, LISTING, MARQUEE, MENU, OBJECT, OL, P, PLAINTEXT, PRE, Q, RT, RUBY, S, SAMP, SELECT, SMALL, SPAN, STRIKE, STRONG, SUB, SUP, TABLE, TBODY, TD, TEXTAREA, TFOOT, TH, THEAD, TR, TT, U, UL, VAR, window, XMP,
onbounceMARQUEE
oncellchangeAPPLET, BDO, OBJECT
onchangeINPUT type=text, SELECT, TEXTAREA
onclickA, ADDRESS, APPLET, AREA, B, BDO, BIG, BLOCKQUOTE, BODY, BUTTON, CAPTION, CENTER, CITE, CODE, CUSTOM, DD, DFN, DIR, DIV, DL, document, DT, EM, EMBED, FIELDSET, FONT, FORM, hn, HR, I, IMG, INPUT type=button, INPUT type=checkbox, INPUT type=file, INPUT type=image, INPUT type=password, INPUT type=radio, INPUT type=reset, INPUT type=submit, INPUT type=text, KBD, LABEL, LEGEND, LI, LISTING, MAP, MARQUEE, MENU, nextID, NOBR, OBJECT, OL, P, PLAINTEXT, PRE, RT, RUBY, S, SAMP, SELECT, SMALL, SPAN, STRIKE, STRONG, SUB, SUP, TABLE, TBODY, TD, TEXTAREA, TFOOT, TH, THEAD, TR, TT, U, UL, VAR, XMP,
oncontextmenuA, ADDRESS, APPLET, AREA, B, BDO, BIG, BLOCKQUOTE, BODY, BUTTON, CAPTION, CENTER, CITE, CODE, CUSTOM, DD, DFN, DIR, DIV, DL, document, DT, EM, EMBED, FIELDSET, FONT, FORM, hn, HR, I, IMG, INPUT type=button, INPUT type=checkbox, INPUT type=file, INPUT type=image, INPUT type=password, INPUT type=radio, INPUT type=reset, INPUT type=submit, INPUT type=text, KBD, LABEL, LEGEND, LI, LISTING, MARQUEE, MENU, nextID, NOBR, OL, P, PLAINTEXT, PRE, RT, RUBY, S, SAMP, SELECT, SMALL, SPAN, STRIKE, STRONG, SUB, SUP, TABLE, TBODY, TD, TEXTAREA, TFOOT, TH, THEAD, TR, TT, U, UL, VAR, XMP,
oncontrolselectA, ACRONYM, ADDRESS, APPLET, AREA, B, BDO, BIG, BLOCKQUOTE, BODY, BUTTON, CAPTION, CENTER, CITE, CUSTOM, DD, DFN, DIR, DIV, DL, document, DT, EM, EMBED, FIELDSET, FONT, FORM, FRAME, FRAMESET, hn, HR, I, IFRAME, IMG, INPUT type=button, INPUT type=checkbox, INPUT type=file, INPUT type=hidden, INPUT type=image, INPUT type=password, INPUT type=radio, INPUT type=reset, INPUT type=submit, INPUT type=text, INS, ISINDEX, KBD, LABEL, LEGEND, LI, LISTING, MARQUEE, MENU, OBJECT, OL, P, PLAINTEXT, PRE, Q, RT, RUBY, S, SAMP, SELECT, SMALL, SPAN, STRIKE, STRONG, SUB, SUP, TABLE, TBODY, TD, TEXTAREA, TFOOT, TH, THEAD, TR, TT, U, UL, VAR, window, XMP,
oncopyA, ADDRESS, AREA, B, BDO, BIG, BLOCKQUOTE, CAPTION, CENTER, CITE, CODE, CUSTOM, DD, DFN, DIR, DIV, DL, DT, EM, FIELDSET, FORM, hn, HR, I, IMG, LEGEND, LI, LISTING, MENU, NOBR, OL, P, PLAINTEXT, PRE, S, SAMP, SMALL, SPAN, STRIKE, STRONG, SUB, SUP, TD, TH, TR, TT, U, UL,
oncutA, ADDRESS, APPLET, AREA, B, BDO, BIG, BLOCKQUOTE, BODY, BUTTON, CAPTION, CENTER, CITE, CODE, CUSTOM, DD, DFN, DIR, DIV, DL, document, DT, EM, EMBED, FIELDSET, FONT, FORM, hn, HR, I, IMG, INPUT type=button, INPUT type=checkbox, INPUT type=file, INPUT type=image, INPUT type=password, INPUT type=radio, INPUT type=reset, INPUT type=submit, INPUT type=text, KBD, LABEL, LEGEND, LI, LISTING, MAP, MARQUEE, MENU, nextID, NOBR, OL, P, PLAINTEXT, PRE, RT, RUBY, S, SAMP, SELECT, SMALL, SPAN, STRIKE, STRONG, SUB, SUP, TABLE, TBODY, TD, TEXTAREA, TFOOT, TH, THEAD, TR, TT, U, UL, VAR, XMP,
ondataavailableAPPLET, OBJECT, XML
ondatasetchangedAPPLET, OBJECT, XML
ondatasetcompleteAPPLET, OBJECT, XML
ondblclickA, ADDRESS, APPLET, AREA, B, BDO, BIG, BLOCKQUOTE, BODY, BUTTON, CAPTION, CENTER, CITE, CODE, CUSTOM, DD, DFN, DIR, DIV, DL, document, DT, EM, EMBED, FIELDSET, FONT, FORM, hn, HR, I, IMG, INPUT type=button, INPUT type=checkbox, INPUT type=file, INPUT type=image, INPUT type=password, INPUT type=radio, INPUT type=reset, INPUT type=submit, INPUT type=text, KBD, LABEL, LEGEND, LI, LISTING, MAP, MARQUEE, MENU, nextID, NOBR, OBJECT, OL, P, PLAINTEXT, PRE, RT, RUBY, S, SAMP, SELECT, SMALL, SPAN, STRIKE, STRONG, SUB, SUP, TABLE, TBODY, TD, TEXTAREA, TFOOT, TH, THEAD, TR, TT, U, UL, VAR, XMP,
ondeactivateA, ACRONYM, ADDRESS, APPLET, AREA, B, BDO, BIG, BLOCKQUOTE, BODY, BUTTON, CAPTION, CENTER, CITE, CUSTOM, DD, DFN, DIR, DIV, DL, document, DT, EM, EMBED, FIELDSET, FONT, FORM, FRAME, FRAMESET, hn, HR, I, IFRAME, IMG, INPUT type=button, INPUT type=checkbox, INPUT type=file, INPUT type=hidden, INPUT type=image, INPUT type=password, INPUT type=radio, INPUT type=reset, INPUT type=submit, INPUT type=text, INS, ISINDEX, KBD, LABEL, LEGEND, LI, LISTING, MARQUEE, MENU, OBJECT, OL, P, PLAINTEXT, PRE, Q, RT, RUBY, S, SAMP, SELECT, SMALL, SPAN, STRIKE, STRONG, SUB, SUP, TABLE, TBODY, TD, TEXTAREA, TFOOT, TH, THEAD, TR, TT, U, UL, VAR, window, XMP,
ondragA, ACRONYM, ADDRESS, AREA, B, BDO, BIG, BLOCKQUOTE, BODY, CAPTION, CENTER, CITE, CODE, CUSTOM, DD, DEL, DFN, DIR, DIV, DL, document, DT, EM, FIELDSET, FONT, FORM, hn, HR, I, IMG, INPUT type=button, INPUT type=checkbox, INPUT type=file, INPUT type=image, INPUT type=password, INPUT type=radio, INPUT type=reset, INPUT type=submit, INPUT type=text, KBD, LABEL, LI, LISTING, MAP, MARQUEE, MENU, NOBR, OBJECT, OL, P, PLAINTEXT, PRE, Q, S, SAMP, SMALL, SPAN, STRIKE, STRONG, SUB, SUP, TABLE, TBODY, TD, TEXTAREA, TR, TT, U, UL, VAR, XMP,
ondragendA, ACRONYM, ADDRESS, AREA, B, BDO, BIG, BLOCKQUOTE, BODY, CAPTION, CENTER, CITE, CODE, CUSTOM, DD, DEL, DFN, DIR, DIV, DL, document, DT, EM, FIELDSET, FONT, FORM, hn, HR, I, IMG, INPUT type=button, INPUT type=checkbox, INPUT type=file, INPUT type=image, INPUT type=password, INPUT type=radio, INPUT type=reset, INPUT type=submit, INPUT type=text, KBD, LABEL, LI, LISTING, MAP, MARQUEE, MENU, NOBR, OBJECT, OL, P, PLAINTEXT, PRE, Q, S, SAMP, SMALL, SPAN, STRIKE, STRONG, SUB, SUP, TABLE, TBODY, TD, TEXTAREA, TR, TT, U, UL, VAR, XMP,
ondragenterA, ACRONYM, ADDRESS, AREA, B, BDO, BIG, BLOCKQUOTE, BODY, BUTTON, CAPTION, CENTER, CITE, CODE, CUSTOM, DD, DEL, DFN, DIR, DIV, DL, document, DT, EM, FIELDSET, FONT, FORM, hn, HR, I, IMG, INPUT type=button, INPUT type=checkbox, INPUT type=file, INPUT type=image, INPUT type=password, INPUT type=radio, INPUT type=reset, INPUT type=submit, INPUT type=text, KBD, LABEL, LI, LISTING, MAP, MARQUEE, MENU, NOBR, OBJECT, OL, P, PLAINTEXT, PRE, Q, S, SAMP, SELECT, SMALL, SPAN, STRIKE, STRONG, SUB, SUP, TABLE, TBODY, TD, TEXTAREA, TFOOT, TH, THEAD, TR, TT, U, UL, VAR, XMP,
ondragleaveA, ACRONYM, ADDRESS, AREA, B, BDO, BIG, BLOCKQUOTE, BODY, BUTTON, CAPTION, CENTER, CITE, CODE, CUSTOM, DD, DEL, DFN, DIR, DIV, DL, document, DT, EM, FIELDSET, FONT, FORM, hn, HR, I, IMG, INPUT type=button, INPUT type=checkbox, INPUT type=file, INPUT type=image, INPUT type=password, INPUT type=radio, INPUT type=reset, INPUT type=submit, INPUT type=text, KBD, LABEL, LI, LISTING, MAP, MARQUEE, MENU, NOBR, OBJECT, OL, P, PLAINTEXT, PRE, Q, S, SAMP, SELECT, SMALL, SPAN, STRIKE, STRONG, SUB, SUP, TABLE, TBODY, TD, TEXTAREA, TR, TT, U, UL, VAR, XMP,
ondragoverA, ACRONYM, ADDRESS, AREA, B, BDO, BIG, BLOCKQUOTE, BODY, BUTTON, CAPTION, CENTER, CITE, CODE, CUSTOM, DD, DEL, DFN, DIR, DIV, DL, document, DT, EM, FIELDSET, FONT, FORM, hn, HR, I, IMG, INPUT type=button, INPUT type=checkbox, INPUT type=file, INPUT type=image, INPUT type=password, INPUT type=radio, INPUT type=reset, INPUT type=submit, INPUT type=text, KBD, LABEL, LI, LISTING, MAP, MARQUEE, MENU, NOBR, OBJECT, OL, P, PLAINTEXT, PRE, Q, S, SAMP, SELECT, SMALL, SPAN, STRIKE, STRONG, SUB, SUP, TABLE, TBODY, TD, TEXTAREA, TR, TT, U, UL, VAR, XMP,
ondragstartA, ACRONYM, ADDRESS, AREA, B, BDO, BIG, BLOCKQUOTE, BODY, CAPTION, CENTER, CITE, CODE, CUSTOM, DD, DEL, DFN, DIR, DIV, DL, document, DT, EM, FIELDSET, FONT, FORM, hn, HR, I, IMG, INPUT type=button, INPUT type=checkbox, INPUT type=file, INPUT type=image, INPUT type=password, INPUT type=radio, INPUT type=reset, INPUT type=submit, INPUT type=text, KBD, LABEL, LI, LISTING, MAP, MARQUEE, MENU, nextID, NOBR, OBJECT, OL, P, PLAINTEXT, PRE, Q, RT, RUBY, S, SAMP, SMALL, SPAN, STRIKE, STRONG, SUB, SUP, TABLE, TBODY, TD, TEXTAREA, TFOOT, TH, THEAD, TR, TT, U, UL, VAR, XMP,
ondropA, ACRONYM, ADDRESS, AREA, B, BDO, BIG, BLOCKQUOTE, BODY, BUTTON, CAPTION, CENTER, CITE, CODE, CUSTOM, DD, DEL, DFN, DIR, DIV, DL, document, DT, EM, FIELDSET, FONT, FORM, hn, HR, I, IMG, INPUT type=button, INPUT type=checkbox, INPUT type=file, INPUT type=image, INPUT type=password, INPUT type=radio, INPUT type=reset, INPUT type=submit, INPUT type=text, KBD, LABEL, LI, LISTING, MAP, MARQUEE, MENU, NOBR, OBJECT, OL, P, PLAINTEXT, PRE, Q, S, SAMP, SELECT, SMALL, SPAN, STRIKE, STRONG, SUB, SUP, TABLE, TBODY, TD, TEXTAREA, TR, TT, U, UL, VAR, XMP,
onerrorIMG, OBJECT, STYLE, window
onerrorupdateA, BUTTON, DIV, FRAME, IFRAME, IMG, INPUT type=checkbox, INPUT type=hidden, INPUT type=password, INPUT type=radio, INPUT type=text, TEXTAREA, LABEL, LEGEND, MARQUEE, SELECT, SPAN, BDO, CUSTOM, RT, RUBY,
onfilterchangeBDO, BODY, BUTTON, CUSTOM, DIV, FIELDSET, IMG, INPUT type=button, INPUT type=checkbox, INPUT type=file, INPUT type=image, INPUT type=password, INPUT type=radio, INPUT type=reset, INPUT type=submit, INPUT type=text, MARQUEE, nextID, RT, RUBY, SPAN, TABLE, TD, TEXTAREA, TH, TR,
onfinishMARQUEE
onfocusA, ACRONYM, ADDRESS, APPLET, AREA, B, BDO, BIG, BLOCKQUOTE, BUTTON, CAPTION, CENTER, CITE, CUSTOM, DD, DEL, DFN, DIR, DIV, DL, DT, EM, EMBED, FIELDSET, FONT, FORM, FRAME, FRAMESET, hn, HR, I, IFRAME, IMG, INPUT type=button, INPUT type=checkbox, INPUT type=file, INPUT type=hidden, INPUT type=image, INPUT type=password, INPUT type=radio, INPUT type=reset, INPUT type=submit, INPUT type=text, INS, ISINDEX, KBD, LABEL, LEGEND, LI, LISTING, MARQUEE, MENU, OBJECT, OL, P, PLAINTEXT, PRE, Q, RT, RUBY, S, SAMP, SELECT, SMALL, SPAN, STRIKE, STRONG, SUB, SUP, TABLE, TBODY, TD, TEXTAREA, TFOOT, TH, THEAD, TR, TT, U, UL, VAR, window, XMP,
onfocusinA, ADDRESS, APPLET, AREA, B, BDO, BIG, BLOCKQUOTE, BODY, BUTTON, CAPTION, CENTER, CITE, CODE, CUSTOM, DD, DFN, DIR, DIV, DL, document, DT, EM, EMBED, FIELDSET, FONT, FORM, hn, HR, I, IMG, INPUT type=button, INPUT type=checkbox, INPUT type=file, INPUT type=image, INPUT type=reset, INPUT type=password, INPUT type=radio, INPUT type=submit, INPUT type=text, KBD, LABEL, LEGEND, LI, LISTING, MAP, MARQUEE, MENU, nextID, NOBR, OL, P, PLAINTEXT, PRE, RT, RUBY, S, SAMP, SELECT, SMALL, SPAN, STRIKE, STRONG, SUB, SUP, TABLE, TBODY, TD, TEXTAREA, TFOOT, TH, THEAD, TR, TT, U, UL, VAR, XMP,
onfocusoutA, ADDRESS, APPLET, AREA, B, BDO, BIG, BLOCKQUOTE, BODY, BUTTON, CAPTION, CENTER, CITE, CODE, CUSTOM, DD, DFN, DIR, DIV, DL, document, DT, EM, EMBED, FIELDSET, FONT, FORM, hn, HR, I, IMG, INPUT type=button, INPUT type=checkbox, INPUT type=file, INPUT type=image, INPUT type=reset, INPUT type=password, INPUT type=radio, INPUT type=submit, INPUT type=text, KBD, LABEL, LEGEND, LI, LISTING, MAP, MARQUEE, MENU, nextID, NOBR, OL, P, PLAINTEXT, PRE, RT, RUBY, S, SAMP, SELECT, SMALL, SPAN, STRIKE, STRONG, SUB, SUP, TABLE, TBODY, TD, TEXTAREA, TFOOT, TH, THEAD, TR, TT, U, UL, VAR, XMP,
onhelpAA, ADDRESS, APPLET, AREA, B, BDO, BIG, BLOCKQUOTE, BUTTON, CAPTION, CENTER, CITE, CODE, CUSTOM, DD, DFN, DIR, DIV, DL, document, DT, EM, EMBED, FIELDSET, FONT, FORM, hn, HR, I, IMG, INPUT type=button, INPUT type=checkbox, INPUT type=file, INPUT type=image, INPUT type=password, INPUT type=radio, INPUT type=reset, INPUT type=submit, INPUT type=text, KBD, LABEL, LEGEND, LI, LISTING, MAP, MARQUEE, MENU, nextID, NOBR, OL, P, PLAINTEXT, PRE, RT, RUBY, S, SAMP, SELECT, SMALL, SPAN, STRIKE, STRONG, SUB, SUP, TABLE, TBODY, TD, TEXTAREA, TFOOT, TH, THEAD, TR, TT, U, UL, VAR, window, XMP,
onkeydownA, ACRONYM, ADDRESS, APPLET, AREA, B, BDO, BIG, BLOCKQUOTE, BODY, BUTTON, CAPTION, CENTER, CITE, CODE, CUSTOM, DD, DEL, DFN, DIR, DIV, document, DT, EM, FIELDSET, FONT, FORM, hn, HR, I, INPUT type=button, INPUT type=checkbox, INPUT type=file, INPUT type=image, INPUT type=password, INPUT type=radio, INPUT type=reset, INPUT type=submit, INPUT type=text, KBD, LABEL, LEGEND, LI, LISTING, MAP, MARQUEE, MENU, nextID, NOBR, OBJECT, OL, P, PLAINTEXT, PRE, Q, RT, RUBY, S, SAMP, SELECT, SMALL, SPAN, STRIKE, STRONG, SUB, SUP, TABLE, TBODY, TD, TEXTAREA, TFOOT, TH, THEAD, TR, TT, U, UL, VAR, XMP,
onkeypressA, ACRONYM, ADDRESS, APPLET, AREA, B, BDO, BIG, BLOCKQUOTE, BODY, BUTTON, CAPTION, CENTER, CITE, CODE, CUSTOM, DD, DEL, DFN, DIR, DIV, document, DT, EM, FIELDSET, FONT, FORM, hn, HR, I, INPUT type=button, INPUT type=checkbox, INPUT type=file, INPUT type=image, INPUT type=password, INPUT type=radio, INPUT type=reset, INPUT type=submit, INPUT type=text, KBD, LABEL, LEGEND, LI, LISTING, MAP, MARQUEE, MENU, nextID, NOBR, OBJECT, OL, P, PLAINTEXT, PRE, Q, RT, RUBY, S, SAMP, SELECT, SMALL, SPAN, STRIKE, STRONG, SUB, SUP, TABLE, TBODY, TD, TEXTAREA, TFOOT, TH, THEAD, TR, TT, U, UL, VAR, XMP,
onkeyupA, ACRONYM, ADDRESS, APPLET, AREA, B, BDO, BIG, BLOCKQUOTE, BODY, BUTTON, CAPTION, CENTER, CITE, CODE, CUSTOM, DD, DEL, DFN, DIR, DIV, document, DT, EM, FIELDSET, FONT, FORM, hn, HR, I, INPUT type=button, INPUT type=checkbox, INPUT type=file, INPUT type=image, INPUT type=password, INPUT type=radio, INPUT type=reset, INPUT type=submit, INPUT type=text, KBD, LABEL, LEGEND, LI, LISTING, MAP, MARQUEE, MENU, nextID, NOBR, OBJECT, OL, P, PLAINTEXT, PRE, Q, RT, RUBY, S, SAMP, SELECT, SMALL, SPAN, STRIKE, STRONG, SUB, SUP, TABLE, TBODY, TD, TEXTAREA, TFOOT, TH, THEAD, TR, TT, U, UL, VAR, XMP,
onlayoutcompleteBASE, BASEFONT, BGSOUND, BR, COL, DD, DIV, DL, DT, FONT, HEAD, HR, HTML, HTML Comment, LAYOUTRECT, LI, META, OL, OPTION, P, TITLE, UL,
onloadAPPLET, BODY, EMBED, FRAME, FRAMESET, IFRAME, IMG, LINK, SCRIPT, window,
onlosecaptureA, ADDRESS, APPLET, AREA, B, BDO, BIG, BLOCKQUOTE, BODY, BR, BUTTON, CAPTION, CENTER, CITE, CODE, CUSTOM, DD, DFN, DIR, DIV, DL, DT, EM, EMBED, FIELDSET, FONT, FORM, hn, HR, I, IMG, INPUT type=button, INPUT type=checkbox, INPUT type=file, INPUT type=hidden, INPUT type=image, INPUT type=password, INPUT type=radio, INPUT type=reset, INPUT type=submit, INPUT type=text, KBD, LABEL, LEGEND, LI, LISTING, MAP, MARQUEE, MENU, NOBR, OBJECT, OL, OPTION, P, PLAINTEXT, PRE, S, SAMP, SELECT, SMALL, SPAN, STRIKE, STRONG, SUB, SUP, TABLE, TBODY, TD, TEXTAREA, TFOOT, TH, THEAD, TR, TT, U, UL, VAR, XMP,
onmousedownA, ADDRESS, APPLET, AREA, B, BDO, BIG, BLOCKQUOTE, BODY, BUTTON, CAPTION, CENTER, CITE, CODE, CUSTOM, DD, DFN, DIR, DIV, DL, document, DT, EM, EMBED, FIELDSET, FONT, FORM, hn, HR, I, IMG, INPUT type=button, INPUT type=checkbox, INPUT type=file, INPUT type=image, INPUT type=password, INPUT type=radio, INPUT type=reset, INPUT type=submit, INPUT type=text, KBD, LABEL, LEGEND, LI, LISTING, MAP, MARQUEE, MENU, OL, P, PLAINTEXT, PRE, RT, RUBY, S, SAMP, SELECT, SMALL, SPAN, STRIKE, STRONG, SUB, SUP, TABLE, TBODY, TD, TEXTAREA, TFOOT, TH, THEAD, TR, TT, U, UL, VAR, XMP,
onmouseenterA, ACRONYM, ADDRESS, APPLET, AREA, B, BASE, BASEFONT, BDO, BGSOUND, BIG, BLOCKQUOTE, BODY, BUTTON, CAPTION, CENTER, CITE, CODE, CUSTOM, DD, DFN, DIR, DIV, DL, DT, EM, EMBED, FIELDSET, FONT, FORM, hn, HR, HTML, I, IMG, INPUT type=button, INPUT type=checkbox, INPUT type=file, INPUT type=image, INPUT type=password, INPUT type=radio, INPUT type=reset, INPUT type=submit, INPUT type=text, KBD, LABEL, LEGEND, LI, LISTING, MAP, MARQUEE, MENU, nextID, NOBR, OL, P, PLAINTEXT, PRE, RT, RUBY, S, SAMP, SELECT, SMALL, SPAN, STRIKE, STRONG, SUB, SUP, TABLE, TBODY, TD, TEXTAREA, TFOOT, TH, THEAD, TR, TT, U, UL, VAR, XMP,
onmouseleaveA, ACRONYM, ADDRESS, APPLET, AREA, B, BASE, BASEFONT, BDO, BGSOUND, BIG, BLOCKQUOTE, BODY, BUTTON, CAPTION, CENTER, CITE, CODE, CUSTOM, DD, DFN, DIR, DIV, DL, DT, EM, EMBED, FIELDSET, FONT, FORM, hn, HR, HTML, I, IMG, INPUT type=button, INPUT type=checkbox, INPUT type=file, INPUT type=image, INPUT type=password, INPUT type=radio, INPUT type=reset, INPUT type=submit, INPUT type=text, KBD, LABEL, LEGEND, LI, LISTING, MAP, MARQUEE, MENU, nextID, NOBR, OL, P, PLAINTEXT, PRE, RT, RUBY, S, SAMP, SELECT, SMALL, SPAN, STRIKE, STRONG, SUB, SUP, TABLE, TBODY, TD, TEXTAREA, TFOOT, TH, THEAD, TR, TT, U, UL, VAR, XMP,
onmousemoveA, ADDRESS, APPLET, AREA, B, BDO, BIG, BLOCKQUOTE, BODY, BUTTON, CAPTION, CENTER, CITE, CODE, CUSTOM, DD, DFN, DIR, DIV, DL, document, DT, EM, EMBED, FIELDSET, FONT, FORM, hn, HR, I, IMG, INPUT type=button, INPUT type=checkbox, INPUT type=file, INPUT type=image, INPUT type=reset, INPUT type=password, INPUT type=radio, INPUT type=submit, INPUT type=text, KBD, LABEL, LEGEND, LI, LISTING, MAP, MARQUEE, MENU, nextID, NOBR, OL, P, PLAINTEXT, PRE, RT, RUBY, S, SAMP, SELECT, SMALL, SPAN, STRIKE, STRONG, SUB, SUP, TABLE, TBODY, TD, TEXTAREA, TFOOT, TH, THEAD, TR, TT, U, UL, VAR, XMP,
onmouseoutA, ADDRESS, APPLET, AREA, B, BDO, BIG, BLOCKQUOTE, BODY, BUTTON, CAPTION, CENTER, CITE, CODE, CUSTOM, DD, DFN, DIR, DIV, DL, document, DT, EM, EMBED, FIELDSET, FONT, FORM, hn, HR, I, IMG, INPUT type=button, INPUT type=checkbox, INPUT type=file, INPUT type=image, INPUT type=password, INPUT type=radio, INPUT type=reset, INPUT type=submit, INPUT type=text, KBD, LABEL, LEGEND, LI, LISTING, MAP, MARQUEE, MENU, OL, P, PLAINTEXT, PRE, RT, RUBY, S, SAMP, SELECT, SMALL, SPAN, STRIKE, STRONG, SUB, SUP, TABLE, TBODY, TD, TEXTAREA, TFOOT, TH, THEAD, TR, TT, U, UL, VAR, XMP,
onmouseoverA, ADDRESS, APPLET, AREA, B, BDO, BIG, BLOCKQUOTE, BODY, BUTTON, CAPTION, CENTER, CITE, CODE, CUSTOM, DD, DFN, DIR, DIV, DL, document, DT, EM, EMBED, FIELDSET, FONT, FORM, hn, HR, I, IMG, INPUT type=button, INPUT type=checkbox, INPUT type=file, INPUT type=image, INPUT type=password, INPUT type=radio, INPUT type=reset, INPUT type=submit, INPUT type=text, KBD, LABEL, LEGEND, LI, LISTING, MAP, MARQUEE, MENU, nextID, NOBR, OL, P, PLAINTEXT, PRE, RT, RUBY, S, SAMP, SELECT, SMALL, SPAN, STRIKE, STRONG, SUB, SUP, TABLE, TBODY, TD, TEXTAREA, TFOOT, TH, THEAD, TR, TT, U, UL, VAR, XMP,
onmouseupA, ADDRESS, APPLET, AREA, B, BDO, BIG, BLOCKQUOTE, BODY, BUTTON, CAPTION, CENTER, CITE, CODE, CUSTOM, DD, DFN, DIR, DIV, DL, document, DT, EM, EMBED, FIELDSET, FONT, FORM, hn, HR, I, IMG, INPUT type=button, INPUT type=checkbox, INPUT type=file, INPUT type=image, INPUT type=password, INPUT type=radio, INPUT type=reset, INPUT type=submit, INPUT type=text, KBD, LABEL, LEGEND, LI, LISTING, MAP, MARQUEE, MENU, nextID, NOBR, OL, P, PLAINTEXT, PRE, RT, RUBY, S, SAMP, SELECT, SMALL, SPAN, STRIKE, STRONG, SUB, SUP, TABLE, TBODY, TD, TEXTAREA, TFOOT, TH, THEAD, TR, TT, U, UL, VAR, XMP,
onmousewheelA, ADDRESS, APPLET, AREA, B, BDO, BIG, BLOCKQUOTE, BODY, BUTTON, CAPTION, CENTER, CITE, CODE, CUSTOM, DD, DFN, DIR, DIV, DL, document, DT, EM, EMBED, FIELDSET, FONT, FORM, hn, HR, I, IMG, INPUT type=button, INPUT type=checkbox, INPUT type=file, INPUT type=image, INPUT type=password, INPUT type=radio, INPUT type=reset, INPUT type=submit, INPUT type=text, KBD, LABEL, LEGEND, LI, LISTING, MAP, MARQUEE, MENU, nextID, NOBR, OL, P, PLAINTEXT, PRE, RT, RUBY, S, SAMP, SELECT, SMALL, SPAN, STRIKE, STRONG, SUB, SUP, TABLE, TBODY, TD, TEXTAREA, TFOOT, TH, THEAD, TR, TT, U, UL, VAR, XMP,
onmoveA, ACRONYM, ADDRESS, APPLET, AREA, B, BDO, BIG, BLOCKQUOTE, BODY, BUTTON, CAPTION, CENTER, CITE, CUSTOM, DD, DFN, DIR, DIV, DL, document, DT, EM, EMBED, FIELDSET, FONT, FORM, FRAME, FRAMESET, hn, HR, I, IFRAME, IMG, INPUT type=button, INPUT type=checkbox, INPUT type=file, INPUT type=hidden, INPUT type=image, INPUT type=password, INPUT type=radio, INPUT type=reset, INPUT type=submit, INPUT type=text, INS, ISINDEX, KBD, LABEL, LEGEND, LI, LISTING, MARQUEE, MENU, OBJECT, OL, P, PLAINTEXT, PRE, Q, RT, RUBY, S, SAMP, SELECT, SMALL, SPAN, STRIKE, STRONG, SUB, SUP, TABLE, TBODY, TD, TEXTAREA, TFOOT, TH, THEAD, TR, TT, U, UL, VAR, window, XMP,
onmoveendA, ACRONYM, ADDRESS, APPLET, AREA, B, BDO, BIG, BLOCKQUOTE, BODY, BUTTON, CAPTION, CENTER, CITE, CUSTOM, DD, DFN, DIR, DIV, DL, document, DT, EM, EMBED, FIELDSET, FONT, FORM, FRAME, FRAMESET, hn, HR, I, IFRAME, IMG, INPUT type=button, INPUT type=checkbox, INPUT type=file, INPUT type=hidden, INPUT type=image, INPUT type=password, INPUT type=radio, INPUT type=reset, INPUT type=submit, INPUT type=text, INS, ISINDEX, KBD, LABEL, LEGEND, LI, LISTING, MARQUEE, MENU, OBJECT, OL, P, PLAINTEXT, PRE, Q, RT, RUBY, S, SAMP, SELECT, SMALL, SPAN, STRIKE, STRONG, SUB, SUP, TABLE, TBODY, TD, TEXTAREA, TFOOT, TH, THEAD, TR, TT, U, UL, VAR, window, XMP,
onmovestartA, ACRONYM, ADDRESS, APPLET, AREA, B, BDO, BIG, BLOCKQUOTE, BODY, BUTTON, CAPTION, CENTER, CITE, CUSTOM, DD, DFN, DIR, DIV, DL, document, DT, EM, EMBED, FIELDSET, FONT, FORM, FRAME, FRAMESET, hn, HR, I, IFRAME, IMG, INPUT type=button, INPUT type=checkbox, INPUT type=file, INPUT type=hidden, INPUT type=image, INPUT type=password, INPUT type=radio, INPUT type=reset, INPUT type=submit, INPUT type=text, INS, ISINDEX, KBD, LABEL, LEGEND, LI, LISTING, MARQUEE, MENU, OBJECT, OL, P, PLAINTEXT, PRE, Q, RT, RUBY, S, SAMP, SELECT, SMALL, SPAN, STRIKE, STRONG, SUB, SUP, TABLE, TBODY, TD, TEXTAREA, TFOOT, TH, THEAD, TR, TT, U, UL, VAR, window, XMP,
onpasteA, ADDRESS, APPLET, AREA, B, BDO, BIG, BLOCKQUOTE, BODY, BUTTON, CAPTION, CENTER, CITE, CODE, CUSTOM, DD, DFN, DIR, DIV, DL, document, DT, EM, EMBED, FIELDSET, FONT, FORM, hn, HR, I, IMG, INPUT type=button, INPUT type=checkbox, INPUT type=file, INPUT type=image, INPUT type=password, INPUT type=radio, INPUT type=reset, INPUT type=submit, INPUT type=text, KBD, LABEL, LEGEND, LI, LISTING, MAP, MARQUEE, MENU, nextID, NOBR, OL, P, PLAINTEXT, PRE, RT, RUBY, S, SAMP, SELECT, SMALL, SPAN, STRIKE, STRONG, SUB, SUP, TABLE, TBODY, TD, TEXTAREA, TFOOT, TH, THEAD, TR, TT, U, UL, VAR, XMP,
onpropertychangeA, ADDRESS, APPLET, AREA, B, BDO, BIG, BLOCKQUOTE, BODY, BUTTON, CAPTION, CENTER, CITE, CODE, COMMENT, CUSTOM, DD, DFN, DIR, DIV, DL, document, DT, EM, EMBED, FIELDSET, FONT, FORM, hn, HR, I, IMG, INPUT type=button, INPUT type=checkbox, INPUT type=file, INPUT type=hidden, INPUT type=image, INPUT type=password, INPUT type=radio, INPUT type=reset, INPUT type=submit, INPUT type=text, KBD, LABEL, LEGEND, LI, LISTING, MAP, MARQUEE, MENU, NOBR, OBJECT, OL, OPTION, P, PLAINTEXT, PRE, S, SAMP, SCRIPT, SELECT, SMALL, SPAN, STRIKE, STRONG, SUB, SUP, TABLE, TBODY, TD, TEXTAREA, TFOOT, TH, THEAD, TR, TT, U, UL, VAR, XMP,
onreadystatechangeA, ACRONYM, ADDRESS, APPLET, AREA, B, BASE, BASEFONT, BDO, BGSOUND, BIG, BLOCKQUOTE, BODY, BR, BUTTON, CAPTION, CENTER, CITE, CODE, COL, COLGROUP, COMMENT, CUSTOM, DD, DEL, DFN, DIR, DIV, DL, document, DT, EM, EMBED, FIELDSET, FONT, FORM, HEAD, hn, HR, HTML, I, IFRAME, IMG, INPUT type=button, INPUT type=checkbox, INPUT type=file, INPUT type=hidden, INPUT type=image, INPUT type=password, INPUT type=radio, INPUT type=reset, INPUT type=submit, INPUT type=text, INS, ISINDEX, KBD, LABEL, LEGEND, LI, LINK, LISTING, MAP, MARQUEE, MENU, namespace, nextID, NOBR, NOFRAMES, NOSCRIPT, OBJECT, OL, OPTION, P, PLAINTEXT, PRE, Q, RT, RUBY, S, SAMP, SCRIPT, SELECT, SMALL, SPAN, STRIKE, STRONG, STYLE, SUB, SUP, TABLE, TBODY, TD, TEXTAREA, TFOOT, TH, THEAD, TITLE, TR, TT, U, UL, VAR, XML, XMP,
onresetFORM
onresizeA, ADDRESS, APPLET, B, BIG, BLOCKQUOTE, BUTTON, CENTER, CITE, CODE, CUSTOM, DD, DFN, DIR, DIV, DL, DT, EM, EMBED, FIELDSET, FORM, FRAME, hn, HR, I, IMG, INPUT type=button, INPUT type=file, INPUT type=image, INPUT type=password, INPUT type=reset, INPUT type=submit, INPUT type=text, ISINDEX, KBD, LABEL, LEGEND, LI, LISTING, MARQUEE, MENU, OBJECT, OL, P, PRE, S, SAMP, SELECT, SMALL, SPAN, STRIKE, STRONG, SUB, SUP, TABLE, TEXTAREA, TT, U, UL, VAR, window, XMP,
onresizeendA, ACRONYM, ADDRESS, APPLET, AREA, B, BDO, BIG, BLOCKQUOTE, BODY, BUTTON, CAPTION, CENTER, CITE, CUSTOM, DD, DFN, DIR, DIV, DL, document, DT, EM, EMBED, FIELDSET, FONT, FORM, FRAME, FRAMESET, hn, HR, I, IFRAME, IMG, INPUT type=button, INPUT type=checkbox, INPUT type=file, INPUT type=hidden, INPUT type=image, INPUT type=password, INPUT type=radio, INPUT type=reset, INPUT type=submit, INPUT type=text, INS, ISINDEX, KBD, LABEL, LEGEND, LI, LISTING, MARQUEE, MENU, OBJECT, OL, P, PLAINTEXT, PRE, Q, RT, RUBY, S, SAMP, SELECT, SMALL, SPAN, STRIKE, STRONG, SUB, SUP, TABLE, TBODY, TD, TEXTAREA, TFOOT, TH, THEAD, TR, TT, U, UL, VAR, window, XMP,
onresizestartA, ACRONYM, ADDRESS, APPLET, AREA, B, BDO, BIG, BLOCKQUOTE, BODY, BUTTON, CAPTION, CENTER, CITE, CUSTOM, DD, DFN, DIR, DIV, DL, document, DT, EM, EMBED, FIELDSET, FONT, FORM, FRAME, FRAMESET, hn, HR, I, IFRAME, IMG, INPUT type=button, INPUT type=checkbox, INPUT type=file, INPUT type=hidden, INPUT type=image, INPUT type=password, INPUT type=radio, INPUT type=reset, INPUT type=submit, INPUT type=text, INS, ISINDEX, KBD, LABEL, LEGEND, LI, LISTING, MARQUEE, MENU, OBJECT, OL, P, PLAINTEXT, PRE, Q, RT, RUBY, S, SAMP, SELECT, SMALL, SPAN, STRIKE, STRONG, SUB, SUP, TABLE, TBODY, TD, TEXTAREA, TFOOT, TH, THEAD, TR, TT, U, UL, VAR, window, XMP,
onrowenterAPPLET, OBJECT, XML
onrowexitAPPLET, OBJECT, XML
onrowsdeleteAPPLET, OBJECT, XML
onrowsinsertedAPPLET, OBJECT, XML
onscrollAPPLET, BDO, BODY, CUSTOM, DIV, EMBED, MAP, MARQUEE, OBJECT, TABLE, TEXTAREA, window
onselectBODY, INPUT type=text, TEXTAREA
onselectionchangedocument
onselectstartA, ACRONYM, ADDRESS, AREA, B, BDO, BIG, BLOCKQUOTE, BODY, BUTTON, CAPTION, CENTER, CITE, CODE, CUSTOM, DD, DEL, DFN, DIR, DIV, DL, DT, EM, FIELDSET, FONT, FORM, hn, HR, I, IMG, INPUT type=button, INPUT type=checkbox, INPUT type=file, INPUT type=image, INPUT type=password, INPUT type=radio, INPUT type=reset, INPUT type=submit, INPUT type=text, KBD, LABEL, LI, LISTING, MAP, MARQUEE, MENU, nextID, NOBR, OBJECT, OL, OPTION, P, PLAINTEXT, PRE, Q, RT, RUBY, S, SAMP, SELECT, SMALL, SPAN, STRIKE, STRONG, SUB, SUP, TABLE, TBODY, TD, TEXTAREA, TFOOT, TH, THEAD, TR, TT, U, UL, VAR, XMP,
onstartMARQUEE
onstopdocument
onsubmitFORM
onunloadBODY, FRAMESET, window


 IHTMLEventObjインターフェース

此のインターフェースは、イベントプロセス(例えば、イベントが発生した要素でのキーボードのキー状態、マウスの位置とマウスボタンの状態)へのアクセスを提供する。

IHTMLEventObjインターフェースのメンバ

イベント引数(Event Argument)と仕て取得する事の出来るIHTMLEventObjのメンバを下記に示す。

メンバ名解説
altKeyALTキーの状態を示す値を取得
buttonマウスボタンの押し下げ状態を取得
cancelBubble現在のイベントが、HTML DOM(Document Object Model)の要素階層の上位に通知するか何うかを示す値を取得・設定
clientXマウスポインタのウィンドウのクライアント領域でのX座標を取得
clientYマウスポインタのウィンドウのクライアント領域でのY座標を取得
ctrlKeyCTRLキーの状態を示す値を取得
fromElementマウスポインタの有るHtmlElement要素を取得
keyCodeイベント発生時に於ける入力されたキーボード文字のUnicode値を取得・設定
offsetXマウスポインタのイベントが発生したオブジェクトでのX座標を取得
offsetYマウスポインタのイベントが発生したオブジェクトでのY座標を取得
qualifierデータソースオブジェクトから提供されたデータメンバの名前を取得
reasonデータソースオブジェクトに転送されたデータの結果を取得
returnValueイベントからの戻り値の取得・設定
screenXマウスポインタのスクリーン座標でのX座標を取得
screenYマウスポインタのスクリーン座標でのY座標を取得
shiftKeySHIFTキーの状態を示す値を取得
srcElementイベントを発生させたオブジェクトの取得
srcFilteronfilterchangeを発生させる元と成るフィルターオブジェクトを取得
toElementマウスポインタの移動先のHtmlElement要素を取得する。
typeイベントオブジェクトからイベント名を取得
xマウスポインタの直近の親エレメントでのX座標を取得
yマウスポインタの直近の親エレメントでのY座標を取得

此のイベントオブジェクトは、イベントが発生して居る間丈で有効で有る。即ち、イベントハンドラの中で使用する事は出来るが、イベントハンドラ以外のコードでは使用する事は出来ない。此のイベントオブジェクトは、IHTMLWindow2のイベントメソッドを呼び出す事で取得する。

総てのイベントオブジェクトで総てのイベントプロパティが使用可能で有るが、或るイベントでは、意味を為さないプロパティも有る。例えば、IHTMLEventObjのfromElementメソッドやtoElementメソッドで取得した値は、onmouseoverやonmouseoutのイベントの処理中に而巳意味を持つ。

種類ファイル・クラス
格納ファイルmshtml.dll
継承クラスIDispatch
ヘッダファイルとIDLファイルMshtml.h, Mshtml.idl

IHTMLEventObjインターフェースの使用例

下記に、テキスト入力域(INPUT要素、タイプTEXT)に、onpropertychangeイベントを追加し、イベントハンドラ(イベント処理ルーチン)で、テキスト入力域の文字列を表示するコード例を示す。

Visual Basic 2005/2008/2010
Private Event1 As mshtml.HTMLInputTextElementEvents2_Event

' ボタン(Sample 1)がクリックされた時の処理
Private Sub btnSample1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) _
  Handles btnSample1.Click
  
  Dim Doc As mshtml.HTMLDocument = DirectCast( _
    webDisp.Document.DomDocument, mshtml.HTMLDocument)
  Dim Input As mshtml.IHTMLElement = Doc.getElementById("init_word")
  Event1 = DirectCast(Input, mshtml.HTMLInputTextElementEvents2_Event)
  AddHandler Event1.onpropertychange, AddressOf webDisp_OnPropertyChange
  ' 下記の様に記述する事も出来る
  ' AddHandler Event1.onpropertychange, _
  '  New mshtml.HTMLInputTextElementEvents2_onpropertychangeEventHandler( _
  '  AddressOf webDisp_OnPropertyChange)
  tssInfo.Text = "検索分類テキスト領域にイベントを追加しました。"
End Sub

' 上記用イベントハンドラ(プロパティが変更された時のイベント)
Private Sub webDisp_OnPropertyChange(ByVal e As mshtml.IHTMLEventObj)
  Dim S As String = "現在のテキスト:" & e.srcElement.getAttribute("value", 0)
  tssInfo.Text = S
End Sub
Visual C# 2005/2008/2010
private mshtml.HTMLInputTextElementEvents2_Event event1;

// ボタン(Sample 1)がクリックされた時の処理
private void btnSample1_Click(object sender, EventArgs e)
{
  mshtml.HTMLDocument doc = (mshtml.HTMLDocument)webDisp.Document.DomDocument;
  mshtml.IHTMLElement input = doc.getElementById("init_word");
  event1 = (mshtml.HTMLInputTextElementEvents2_Event)input;
  event1.onpropertychange +=
    new mshtml.HTMLInputTextElementEvents2_onpropertychangeEventHandler(
    webDisp_OnPropertyChange);
  tssInfo.Text = "検索分類テキスト領域にイベントを追加しました。";
}

// 上記用イベントハンドラ(プロパティが変更された時のイベント)
private void webDisp_OnPropertyChange(mshtml.IHTMLEventObj e)
{
  string s = "現在のテキスト:" + e.srcElement.getAttribute("value", 0);
  tssInfo.Text = s;
}

上記のコードでは、Microsoft HTML Object Library (mshtml.dll) の参照を追加する必要が有る。

因みに、テストに使用したHTMLファイルには、下記の要素が含まれて居る。

<input type="text" name="init_word" id="init_word" value="ソフトウェア開発">

猶、上記の変数event1を、クラスレベルでグローバルな変数ではなく、プロシージャ内のローカル変数と仕た場合、実行環境にも依るが、暫くするとイベントが捕捉出来なく成る現象が生じる事が有る。

亦、上記のサンプルは、フレームセットを考慮して居ない。 フレームセットを含むページを表示した場合には、何等イベントが発生しない可能性が有る。此の様な場合は、フレームセットを取り扱う為のコードを追加する必要が有る。

Internet Explorerを使用しても、同様の処理を行う事が出来る。其の場合、上記のwebDispの代わりに、Internet Explorer用のローカル変数名を使用する。

〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜

下記に、ドキュメント(HTML要素)に、onclickイベントとonmouseoverイベントを追加し、夫々のイベントハンドラ(イベント処理ルーチン)で、イベントの種類とイベントを発生させた要素のタグ名を表示するコード例を示す。

Visual Basic 2005/2008/2010
Private Event2 As mshtml.HTMLDocumentEvents2_Event

' ボタン(Sample 2)がクリックされた時の処理
Private Sub btnSample2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) _
  Handles btnSample2.Click
  
  Dim Doc As mshtml.HTMLDocument = DirectCast( _
    webDisp.Document.DomDocument, mshtml.HTMLDocument)
  Event2 = DirectCast(Doc, mshtml.HTMLDocumentEvents2_Event)
  AddHandler Event2.onclick, AddressOf webDisp_Click
  AddHandler Event2.onmouseover, AddressOf webDisp_MouseOver
End Sub

' 上記用イベントハンドラ(クリックされた時のイベント)
Private Function webDisp_Click(ByVal e As mshtml.IHTMLEventObj) As Boolean
  tssInfo.Text = e.type & ":" & e.srcElement.tagName
  Return True
End Function

' 上記用イベントハンドラ(マウスカーソルが入域した時のイベント)
Private Sub webDisp_MouseOver(ByVal e As mshtml.IHTMLEventObj)
  tssInfo.Text = e.type & ":" + e.srcElement.tagName
End Sub
Visual C# 2005/2008/2010
private mshtml.HTMLDocumentEvents2_Event event2;

// ボタン(Sample 2)がクリックされた時の処理
private void btnSample2_Click(object sender, EventArgs e)
{
  mshtml.HTMLDocument doc = (mshtml.HTMLDocument)webDisp.Document.DomDocument;
  event2 = (mshtml.HTMLDocumentEvents2_Event)doc;
  event2.onclick +=
    new mshtml.HTMLDocumentEvents2_onclickEventHandler(webDisp_Click);
  event2.onmouseover += new
    mshtml.HTMLDocumentEvents2_onmouseoverEventHandler(webDisp_MouseOver);
}

// 上記用イベントハンドラ(クリックされた時のイベント)
private bool webDisp_Click(mshtml.IHTMLEventObj e)
{
  tssInfo.Text = e.type + ":" + e.srcElement.tagName;
  return true;
}

// 上記用イベントハンドラ(マウスカーソルが入域した時のイベント)
private void webDisp_MouseOver(mshtml.IHTMLEventObj e)
{
  tssInfo.Text = e.type + ":" + e.srcElement.tagName;
}

上記のコードでは、Microsoft HTML Object Library (mshtml.dll) の参照を追加する必要が有る。

猶、上記の変数event2を、クラスレベルでグローバルな変数ではなく、プロシージャ内のローカル変数と仕た場合、実行環境にも依るが、暫くするとイベントが捕捉出来なく成る現象が生じる事が有る。

亦、上記のサンプルは、フレームセットを考慮して居ない。 フレームセットを含むページを表示した場合には、何等イベントが発生しない可能性が有る。此の様な場合は、フレームセットを取り扱う為のコードを追加する必要が有る。

Internet Explorerを使用しても、同様の処理を行う事が出来る。其の場合、上記のwebDispの代わりに、Internet Explorer用のローカル変数名を使用する。

〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜

下記に、WebBrowserコントロールのDomDocumentをIHTMLDocument2にキャストして、lastModifiedプロパティの値を表示するコード例を示す。此れに依り、ドキュメントの所有者に依る内容の最終更新日を知る事が出来る。

Visual Basic 2005/2008/2010
' ボタン(Sample 3)がクリックされた時の処理
Private Sub btnSample3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) _
  Handles btnSample3.Click
  
  Dim Doc As mshtml.IHTMLDocument2 = DirectCast( _
    webDisp.Document.DomDocument, mshtml.IHTMLDocument2)
  tssInfo.Text = "最終更新日:" + Doc.lastModified
End Sub
Visual C# 2005/2008/2010
// ボタン(Sample 3)がクリックされた時の処理
private void btnSample3_Click(object sender, EventArgs e)
{
  mshtml.IHTMLDocument2 doc =
    (mshtml.IHTMLDocument2)webDisp.Document.DomDocument;
  tssInfo.Text = "最終更新日:" + doc.lastModified;
}

ダウンロード

DHTMLリファレンス

http://msdn.microsoft.com/ja-jp/library/Cc409720

資料ダウンロード 資料ダウンロード 資料ダウンロード