- ベストアンサー
javascriptでリンクをクリックしたい
- javascriptでリンクを自動でクリックさせる方法は?
- 初心者にもわかりやすいjavascriptでリンククリックの方法とは?
- javascriptを使ってOKボタンを押した後にリンクをクリックする方法を教えてください
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
/* ** 参考 ** → http://www.atmarkit.co.jp/fwin2k/tutor/cformwsh11/cformwsh11_03.html ** → http://www.atmarkit.co.jp/fwin2k/tutor/cformwsh12/cformwsh12_02.html */ //WshShellオブジェクトの作成 var objWshShell = WScript.CreateObject("WScript.Shell"); //InternetExplorerオブジェクトを作成 var objIE = WScript.CreateObject("InternetExplorer.Application"); //VisibleプロパティをTrueにしてウィンドウを可視状態にする objIE.Visible = true; //Navigateメソッドでページにアクセス objIE.Navigate("http://www.iana.org/domains/example/"); //BusyプロパティがTrueの間、空ループを回してページのロードを待つ while (objIE.Busy) WScript.Sleep(100); objWshShell.AppActivate("Internet Explorer"); var doc = objIE.document; var nodes = doc.getElementsByTagName("a"); for (var i=0; i<nodes.length; i++) { var el = nodes.item(i); if (el.getAttribute("href") == "http://www.iana.org/go/rfc2606") { el.click(); break; } } objIE = null;
その他の回答 (2)
- pringlez
- ベストアンサー率36% (598/1630)
自動操作のプログラミングをする多くの人が最初にぶつかる壁だと思います。 クリックすることはできないはずです。 で、代替方法としてhrefの値を取得してdocument.locationに値を設定します。 (上記の例の場合ie.Navigateでもいいと思います)
お礼
情報 ありがとうございました。 無事解決です。
補足
回答有難うございます。 私も最初はそう考えたのですが それを実行してしまうと フレームを飛び出してしまうのです。 フレームが2つあって 難 なのです。
- tracer
- ベストアンサー率41% (255/621)
対象にしたいブラウザやそのバージョンはありますか? それによっって書き方が変わる場合があります。 また、DOMの学習ということなら話はかわってしまいますが、単純に例に挙げられたことをしたいだけでしたら、jQueryなどのフレームワークを使用したほうが明らかに簡単ですよ。
お礼
jQuery の情報ありがとうございます。 まったく未知の領域ですが 少し 参照してみます。
お礼
ありがとうございます。 無事解決しました TAGの参照値が 間違っていました。 ほんとに助かりました。
補足
回答有難うございます。 ソースかいていただけると参照できてわかりやすかったです。 getElementsByTagName("a"); ↓ getElementsByTagName("コンピュータ"); getAttribute("href") == "http://www.iana.org/go/rfc2606") ↓ getAttribute("href") == "/Console/v7/Customers/Protection/Default.aspx") 上記のように変更して 実行してみましたが 変化がありませんでした。 実のところ vbsでは既に突破していて下記ソースをjsに置き換えることって できないんでしょうか? For Each objLINK In objIE.Document.Links If objLINK.InnerText = "コンピュータ" Then objLINK.Click Exit For End If Next Do Until objIE.Busy = False