2011-10-23 12 views
0

jqueryのトリガ関数を使用して、私が開発している個人用googleのオーストラリアの検索ページのクリックをシミュレートしようとしています。私が読んだことから、あなたはリンクのクリックをシミュレートするためにトリガを使うことができますが、私は問題を抱えているように見えますし、Googleはその情報で非常にひどいと思われます。コードは次のとおりです。Jqueryトリガーの問題

<a class="link" href="<?php if(isset($newurl)) { echo $newurl; }?>" target="_blank">tab link</a> 

<script type="text/javascript"> 
    $("a .link").trigger('click'); 
</script>  

ありがとう! サム

答えて

0

メソッドはclickイベントを発生させますが、clickイベントはリンクのデフォルトの動作を引き起こしません。関連するイベントハンドラが実行されるのは、対応するすべてのclickです。

clickイベントハンドラが、表示されていないリンクにバインドされているかどうかはわかりませんが、リンク先にあることを前提としています。

これが実行しようとしている場合は、イベントハンドラをリンクにバインドしてそこにリダイレクトすることができます。例:

$("a.link").click(function() { 
    window.location = "somewhere.html"; 
}); 
+0

リンクにイベントハンドラを追加するにはどうすればよいですか? – killkrazy

+0

@killkrazy - 私は私の答えを更新しました。 Clickイベントハンドラを要素にバインドするには、jQueryの 'click'メソッドを使用します。 –

+0

良い提案ですが、hrefをGoogle Chromeのタブにポップアップ表示させようとしています。私はgoogleのデフォルト動作を回ることができると思っていました。 Googleクロムはwindow.open( "http:// localhost/123"、 '_blank')を許可しません。 「実際のクリックイベント」に含まれていない限り – killkrazy

3
$("a.link").trigger('click'); (without space) 
1

あなたがa.linkの間にスペースを持っています。それを取り除くとOKです。 (a.linkは、link<a>タグを見つけることを意味し、a .linkは、タグの内側にlinkクラスの要素を見つけることを意味します。

+0

まだ動作しないようですか? – killkrazy