4
4

4 に答える 4

2

この関数を呼び出すときに、DOM がロードされていることを確認してください。

window.onload = MakeMenuLinksOpenInNewWindow;

また:

<body onload="MakeMenuLinksOpenInNewWindow();">
于 2010-09-01T20:09:58.767 に答える
1

おそらく、このjavascriptを設定するべきではありません。代わりにHTMLを使用してください。

しかし、あなたがしなければならないなら...

function MakeMenuLinksOpenInNewWindow() {
    var links = document.getElementsByTagName("a");
    for (var i = 0, l = links.length; i < l; i++) {
        if (links[i].href === "http://www.example.com/")
            links[i].target = "_blank";
    }
}
window.onload = MakeMenuLinksOpenInNewWindow;
于 2010-09-01T20:27:21.460 に答える
1

jQuery.js を使用します。それはあなたの人生をより簡単にします:

$("a[href='http://testtesttest.org/']").attr("target", "_blank");
于 2010-09-01T20:08:59.403 に答える
0

あなたのJavaScriptはうまく見えます。リンク要素を変更しようとする前にリンク要素が存在しないという問題があると仮定すると、他の投稿で述べたように、メソッドの実行を遅らせる必要があります。私の好みの方法は、スクリプトの内容をページの最後に移動することです。

外部の js ファイルを使用しているように見えるため、ページは

    ... 
    <a href="http://testtesttest.org/" >whatever</a>
    ... 
    <script src="myscriptfile.js"></script>
</body>
</html>

それでも問題が解決しない場合は、より完全な例を投稿する必要があります。

編集:別のポイント。hrefそれでも問題が解決しない場合は、プロパティで期待している URL が書き換えられていないことを確認してください。たとえば、/.com の URL を指定しないと、IE はその末尾に末尾を追加するため、比較が失敗します。

于 2010-09-01T21:18:53.370 に答える