名前 題名 ▼ Mr.XRAYさん > > 古いバージョンの IE オブジェクトの DOM では getElementsByClassName > > をサポートしていません. > > MSDN オンラインの記事によると IE 9 からのようです. > ついでに,IE で表示している場合の操作例です. > TShell コンポーネントを使用しています. > > [タイプライブラリの取り込み ( Delphi 2009 - XE5 )] > http://mrxray.on.coocan.jp/Delphi/CompoInstall/TypeLibraryD2009.htm > > IE を新規に起動して,ローカルの this_is_a_button.htm を表示します. > そこのボタンをクリックします. > this_is_a_button.htm の中身は,これまでと同じで, > <Button class="submit" onClick="location.href='http://mrxray.on.coocan.jp/index.htm'">SEND</Button> > です. > > 動作確認は Windows 7 U64(SP1) + Delphi XE(UP1) Pro + IE 11 です. > > unit Unit1; > > interface > > uses > Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, > Dialogs, StdCtrls, SHDocVw, ExtCtrls, Shell32_TLB, OleServer; > > type > TForm1 = class(TForm) > Button1: TButton; > Button2: TButton; > Shell1: TShell; > procedure Button1Click(Sender: TObject); > procedure Button2Click(Sender: TObject); > private > { Private 宣言 } > public > { Public 宣言 } > end; > > var > Form1: TForm1; > > implementation > > uses > MSHTML, > ShellAPI; > > {$R *.dfm} > > //============================================================================= > // 新規にIEを起動して,操作対象のページを表示 > // > // ShellExecuteの使用にはusesにShellAPIが必要 > //============================================================================= > procedure TForm1.Button1Click(Sender: TObject); > var > LAppStr : String; > LAppCmd : String; > begin > //IEはフルパスでなくても起動可能 > LAppStr := 'IEXPLORE.EXE'; > LAppCmd := ExtractFilePath(Application.ExeName) + 'this_is_a_button.htm'; > ShellExecute(Handle, 'open', PChar(LAppStr), PChar(LAppCmd), nil, SW_SHOW); > end; > > //============================================================================= > // 表示中のウェブページのボタンをクリックするサンプル > // JavaScriptのコードとして実行 > // > // ShellWindowsの使用にはusesにSHDocVwが必要 > //============================================================================= > procedure TForm1.Button2Click(Sender: TObject); > var > LSHWindows : ShellWindows; > LIEObj : InternetExplorer; > LDoc2 : IHtmlDocument2; > LHTMLWindow : IHTMLWindow2; > LTagName : String; > LJsText : String; > begin > LSHWindows := Shell1.Windows as ShellWindows; > LIEObj := LSHWindows.Item(LSHWindows.Count - 1) as InternetExplorer; > > LDoc2 := LIEObj.Document as IHTMLDocument2; > if Assigned(LDoc2) then begin > LHTMLWindow := LDoc2.parentWindow as IHTMLWindow2; > > LTagName := '''button'''; > LJsText := 'document.getElementsByTagName(' + LTagName + ')[0].click();'; > > LHTMLWindow.execScript(LJsText, 'JavaScript'); > end; > end; > > end. > GIF,JPEG,PNG画像ファイル及びLZH,ZIPファイルをアップロードできます.600 x 1200 ピクセルを超える画像は縮小表示されます(画像クリックで拡大表示). (上限122000(120k)バイト) 削除キー Link