私のウェブサイトにはいくつかのハイパーリンクがあります。私が望むのは、特定の条件に一致する場合、 a href html タグを削除することです。
例
href が example.com の場合、ハイパーリンクは解消され、<a></a>
タグは消えるはずです
私は次のステートメントを使用してきました。
$("a[href='http://www.example.com']").removeAttr("href");
href は削除されますが、<a>
まだそこにあります。
私のウェブサイトにはいくつかのハイパーリンクがあります。私が望むのは、特定の条件に一致する場合、 a href html タグを削除することです。
例
href が example.com の場合、ハイパーリンクは解消され、<a></a>
タグは消えるはずです
私は次のステートメントを使用してきました。
$("a[href='http://www.example.com']").removeAttr("href");
href は削除されますが、<a>
まだそこにあります。
.removeを使用して要素全体を削除できます。
$("a[href='http://www.example.com']").remove();
リンクのテキストを保持し、リンク自体を削除するには:
$("a[href='http://www.example.com']").replaceWith(function() {
return $(this).text();
});
.html()
保持したいリンク内に他の HTML タグがある場合は、代わりに使用してください。
アンカー要素を削除するには、これを試してください:
$("a[href='http://www.example.com']").remove();
詳細については、.remove()
docoを参照してください。
編集:アンカー要素をそのコンテンツに置き換えるには、これを試してください:
$("a[href='http://www.example.com']").replaceWith(function() {
return $(this).html();
});
この.replaceWith()
メソッドは、期待どおりのことを行います。関数を渡すと、一致する各要素に対してその関数が呼び出されthis
、現在の要素が関数からの戻り値に置き換えられます。
$("a[href='http://www.example.com']").remove();
$("a[href='http://www.example.com']").unwrap(); -> also check this :D
次のコマンドを使用して、タグ全体を削除できます。
$("a[href='http://www.example.com']").find().remove();
コード
$('a').each(function() {
var foo = $(this).attr("href");
if (foo == "http://www.example.com") {
$(this).remove();
}
});