0

「#」の href を持つリンクを検索し、それらの CSS スタイルを変更してそれらのリンクを別の色にする方法を探しています。基本的に、壊れているリンクと壊れていないリンクを簡単に識別できるようにしたいと考えています。

これは大規模なドキュメント プロジェクトに使用されており、まだすべてのファイルがアップロードされているわけではありません。どのリンクが機能し、どのリンクが機能しないかをユーザーが簡単に識別できるようにしたいと考えています。これはどういうわけかJavascriptで行うことができますか?

4

4 に答える 4

0

これが古い質問であることは知っていますが、この質問には JavaScript を必要としない回答が必要です。純粋な CSS を使用して href に基づいてリンクをスタイリングする方がはるかに効率的です。

次の CSS は、すべてのリンクを「#」赤の href でスタイル設定します。

a[href="#"] {
    color: red;
}
于 2015-11-04T10:38:28.990 に答える
0

ページ上のすべてのリンクをループして、個別にチェックし、必要に応じてスタイルを変更する必要があります。拡張するための出発点は次のとおりです。

var anchors = document.getElementsByTagName('a'); //Get all the links
for(var i = 0; i < anchors.length; i++) { //Loop through links
    if(anchors[i].href === '#') { //If link points to "href",
         anchors[i].style.color = 'red'; //then change the link's color to red
    }
}
于 2013-11-03T00:15:44.063 に答える
0

JavaScriptでは、次のように何とかすることができます:

var els = document.getElementsByTagName("a");
for (var i = 0, l = els.length; i < l; i++) {
    var el = els[i];
    if (el.href === '#') {
       //do something here
    }
}
于 2013-11-03T00:15:56.057 に答える
0

それは間違ったアプローチだと思います。おそらく、JavaScript を使用して実行時に行うのではなく、ファイルを解析して壊れたリンクを修正/特定するサーバー側のプロセスを用意する必要があります。

ただし、を使用して href 属性に基づいて要素をクエリできますdocument.querySelectorAll

[].forEach.call(document.querySelectorAll('a[href="#"]'), function (link) {
    link.style.color = 'red'; //change style
});
于 2013-11-03T00:18:37.627 に答える