195

JavaScript を使用して自分のページのリンクをクリックする方法はありますか?

4

12 に答える 12

271
document.getElementById('yourLinkID').click();
于 2010-09-17T20:03:34.620 に答える
46

この関数は、少なくとも Firefox と Internet Explorer で動作します。リンクに関連付けられたイベント ハンドラーが実行され、イベント ハンドラーが既定のアクションをキャンセルしない場合は、リンクされたページが読み込まれます。

function clickLink(link) {
    var cancelled = false;

    if (document.createEvent) {
        var event = document.createEvent("MouseEvents");
        event.initMouseEvent("click", true, true, window,
            0, 0, 0, 0, 0,
            false, false, false, false,
            0, null);
        cancelled = !link.dispatchEvent(event);
    }
    else if (link.fireEvent) {
        cancelled = !link.fireEvent("onclick");
    }

    if (!cancelled) {
        window.location = link.href;
    }
}
于 2009-05-24T01:16:20.330 に答える
44

現在のページ アドレスのみを変更したい場合は、Javascript でこれを実行するだけで変更できます。

location.href = "http://www.example.com/test";
于 2009-05-23T23:44:35.817 に答える
19

単にそのように:

<a id="myLink" onclick="alert('link click');">LINK 1</a>
<a id="myLink2" onclick="document.getElementById('myLink').click()">Click link 1</a>

またはページの読み込み時:

<body onload="document.getElementById('myLink').click()">
...
<a id="myLink" onclick="alert('link click');">LINK 1</a>
...
</body>
于 2009-05-23T23:37:43.320 に答える
6

私にとっては、そのように機能させることができました。自動クリックを 5000 ミリ秒で展開し、1000 ミリ秒後にループを閉じました。その後、自動クリックは1回だけでした。

<script> var myVar = setInterval(function ({document.getElementById("test").click();}, 500)); setInterval(function () {clearInterval(myVar)}, 1000));</script>
于 2017-02-07T12:49:39.717 に答える
1

クリックする代わりに、Javascript を使用して、クリックすると移動する URL に転送できますか?

たぶん、ボディ onLoad に何かを入れて、好きな場所に移動できます。

于 2009-05-23T23:40:49.193 に答える
1

それらを別のページにリダイレクトするだけです。実際、文字通りリンクをクリックしてそこに移動するようにするのは不必要に思えますが、私はその全容を知りません.

于 2009-05-24T01:04:09.853 に答える
-2

次の場合にリンクを自動的にクリックするクライアント側 JS 関数...

これは、サーバーから渡されたエラーを保持する非表示のフォーム入力の値を確認する例です。クライアント側の JS はその値を確認し、指定した別の場所にエラーを入力します。ポップアップログインモーダルの場合。

var signUperror = document.getElementById('handleError')

if (signUperror) {
  if(signUperror.innerHTML != ""){
  var clicker = function(){
    document.getElementById('signup').click()
  }
  clicker()
  }
}
于 2015-08-05T00:16:50.533 に答える
-5

ユーザーのマウスに何もさせることはできません。ただし、イベントがトリガーされたときに何が起こるかを完全に制御できます。

あなたができることは、ボディロードをクリックすることです。W3Schools には、ここに例があります。

于 2009-05-23T23:35:10.953 に答える