2011-07-13 18 views
5

私はいくつかの同様の質問があることを知っていますが、私は具体的な必要性に対する答えを見ていません:別々に起動したWebページのボタンをクリックする方法はありますか?私は、その後、プログラムでその立ち上げたウェブページ内の入力ボタンをクリックすることができ別のWebページの入力ボタンをプログラムでクリックしますか?

  • <a href="x" target="y">または
  • window.open()

:たとえば、私は、を介して他のWebページを起動しますか?

+0

これを行う目的は何ですか? –

答えて

0

選択できる要素をクリックできます。

セキュリティ保護の対象となるウィンドウ内のエレメントのみを選択できます。

あなたは自分のウィンドウに対する権限と、同じドメイン内のウィンドウに対する権限を持っています&セキュリティ。 window.open

var newWin = window.open(siteYouHaveAccessTo); 
newWin.document.getElementById('foo').click(); 

から返されますが、ウィンドウオブジェクトが必要になります要素にアクセスするには

、あなたがwww.google.comSearchボタンをクリックしようとしている場合、あなたはSOLです。

+0

あなたがアクセスできるドメインまで私が行方不明になっていることがいくつかあります。私は 'http'と' https'が違いを生むのを知っていますが、私が覚えていないのは、サブドメインやディレクトリに問題があるかどうかということです。 – zzzzBov

2

ページがあなた自身のコントロールの下にあるか、同じドメインに存在しない場合は、それは不可能です。これはクロスサイトスクリプティングであり、すべてのブラウザにはこのようなことが起きないようにセキュリティサンドボックスが用意されています。プログラムで開かれているページのボタンをプログラムで押しているのはなぜですか?

2

はい。 window.openを実行すると、ウィンドウオブジェクトが返されます。 Var win = window.open(); win.fnSubmit(); fnSubmitがthe.clickingを行う他のページ上の関数であると仮定します。両方のpqgeは同じドメイン上にあります。

0

調査は...おそらく...宿題をやったことがあれば、おそらく同じサブドメイン内でコミュニケーションが起こるようになるでしょう。私は、2つのウィンドウ(またはiframe)間でJavaScriptを操作するためのブラウザ間でのサブドメインの一貫したサポートは一度もありませんでした。

言い換えれば、それらが同じドメインであれば、そのドメインに降下することです。私が持っている場合:

  • ウィンドウAがウィンドウBを開く
  • ウィンドウBは同様に、あなたはまだする必要があります(var winBVar
  • ウィンドウAの後winBVarにアクセスすることができ、そして後にのみ、その変数が宣言されて宣言するdocument.onloadなどを待つ)
1

これは、いくつかのハッキング攻撃によって使用される技術です。基本的には、DOMに自分自身を添付したり、イメージやswfファイルのソースを変更したり、ページがロードされたときに実行したりできるクエリ文字列にjavascriptを挿入することができます。 example hereおよびexample here

また、他のページの構造をすでに知っている場合は、メソッドやオブジェクトを直接対象にすることができます。

しかし、これらは素晴らしいことではありませんが、受信ページのコードに触れることはできないが、その動作を調整したいという理由があると思います。

関連する問題