2017-04-04 9 views
1

私はこれをJavascriptで書く必要がありますが、私は騒ぎです。 既にwww.w3schools.comのヘルプを探していますが、この単純な答えを見つけるのに時代がかかっているようです。HTMLタグの属性を取得してCSS属性を変更するにはどうすればよいですか?

if (some 'a' tag has this href attribute 'href="http://www.mysite.com.br"') { 
    style="display:none;" 
} 

ありがとうございます。あなたはCSS [attribute=value] Selector

a[href="http://www.google.de/"] { 
 
    color: red; 
 
}
<p> 
 
    Hello 
 
</p> 
 
<a href="http://www.google.de/">Hello</a> 
 
<span>Hello</span>
を使用することができます

+1

、それは任意urlかから成るかどうかgetAttribute()チェックを使用して:なし; } 'と同じセレクタをJavaScriptで使用してアンカーを選択することができます。 – Tushar

+0

CSSを使用してください。これのためにJSは必要ありません。それ以上の処理が必要な場合を除きます。 –

答えて

3

すべてのタグをループして、必要なhrefでタグを隠すだけです。

$('a').each(function(){ 
 
    if($(this).attr('href') == "http://www.mysite.com.br") 
 
    { 
 
    $(this).css('display',"none"); 
 
    } 
 
})
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<a href="http://example.com">Example</a> 
 
<a href="http://www.mysite.com.br">this should be hidden</a> 
 
<a href="http://example2.com">Example 2</a> 
 
<a href="http://example3.com">Example 3</a>

UPDATE

あなたはjQueryのを使用しない場合は、コアJSのアプローチを使用します。まずを使用してa tagを選択

var elements = document.querySelectorAll('a[href="http://www.mysite.com.br"]'); 
 
for (var i = 0; i < elements.length; ++i) { 
 
    elements[i].style.display = "none"; 
 
}
<a href="http://example.com">Example</a> 
 
<a href="http://www.mysite.com.br">this should be hidden</a> 
 
<a href="http://example2.com">Example 2</a> 
 
<a href="http://example3.com">Example 3</a>

+0

彼はjqueryを使用していないようです。 – Anil

+1

ありがとうございます!私は非常に古いサイトを更新することになっていたので、JSアプローチを使用しました。 –

3

CSS溶液(一致するすべての要素にデフォルトで適用されます)

a[href="http://www.mysite.com.br"] { 
    display: none; 
} 

Javascriptのソリューション(イベントでトリガすることができます)

var links = document.querySelectorAll('a[href="http://www.mysite.com.br"]') 
links.forEach(function (element) { 
    element.style.display = 'none' 
}) 
+0

.forEachをすべてのブラウザでサポートしているわけではありません。ただし、SafariやIE/Edgeは例外です。私の提案された答えを見てみましょう。 –

+0

Opera miniを使用していない限り、かなりサポートされています... http://caniuse.com/#search=forEach – motanelu

+0

あなたが言及したcaniuseエントリには、IEとSafariの最新バージョンだけが。すべてのユーザーが最新バージョンを使用しているとは限りません。 –

2

3

クエリセレクタを使用して結果を選択する必要があります。

var elements = document.querySelectorAll('a[href="yoursite"]'); 

、その後、結果をループ:

for (var i = 0; i < elements.length; ++i) { 
    elements[i].style.display = "none"; 
} 

・ホープ、このことができますあなたはそれのようなものになりますjQueryのバニラJSを使用しないようにしたいと仮定。

+0

あなたは正しいです、あなたは私の前に答えました、私の答えは自分のレプリカであるので、私から+1しました。 – Anil

+0

@Anilありがとうございました! –

1

hide a tag次に真ならば、[HREF = "yoursiteが"] {表示 `あなたはCSSを使用することができる以下のように、

var a = document.querySelector("a"); 
 
var b = a.getAttribute("href"); 
 
console.log(b); 
 
if(b == "http://www.mysite.com.br"){ 
 
\t a.style.display = "none"; 
 
}
<a href="http://www.mysite.com.br">Link</a>

+0

@Jordache B.これはうまくいきます。 – frnt

関連する問題