タグを追加したり、タグ<h1>
に追加したりせずに、jQueryではなくプレーンなjavascriptを使用して要素を非表示にしたい。これは可能ですか?
タグに id="whatever" を追加できないのはなぜですか? クリックすると、JavaScriptがUIWebViewに挿入されるxCodeでUIButtonを使用しています。その UIWebView の内部には、追加するアクセス権がない Web サイトにある H1 要素があります。それが理にかなっていることを願っています。id="whatever"
class="whatever"
<h1 id="whatever">
質問する
9056 次
5 に答える
7
document.getElementsByTagName('h1')[0].style.display = 'none';
于 2013-02-12T09:11:20.453 に答える
4
getElementsByTagName
ページの最初を非表示にするために使用しh1
ます。
document.getElementsByTagName("h1")[0].style.display = "none";
// ^ index 0, so that's the first `h` that's found.
または、それらをすべて非表示にするには:
var headers = document.getElementsByTagName("h1");
for (var i = 0, l = headers.length; i < l; i++; ) {
headers[i].style.display = "none";
}
または、さらに良いことに、CSS を変更できる場合:
h1{
display:none;
}
JavaScript ソリューションについては、DOM がロードされている場合にのみ機能することに注意してください。
domready
次のように、イベント リスナーを追加します。
window.addEvent('domready', function() {
// modify your DOM here.
});
于 2013-02-12T09:11:49.403 に答える
4
メソッドを使用できますgetElementsByTagName
:
var h = context.getElementsByTagName('h1');
for (var i = h.length; i--; ) {
h[i].style.display = 'none';
}
ヘッダーを検索する特定の親ノードはどこcontext
にありますか。document
ただし、より良い解決策があります。親ノードに特定のクラスを追加し、CSS で子ヘッダーを非表示にすることができます。
.without-headers h1 {display: none;}
于 2013-02-12T09:11:51.160 に答える
1
dfsq のコードのわずかな変更
var h = document.getElementsByTagName('h1');
for (var i =0; i<h.length; i++) {
document.getElementsByTagName('h1').item(i).style.display = 'none';
}
于 2013-02-12T09:22:30.810 に答える
1
getElementsByTagNameを使用できます
document.getElementsByTagName("h1")
ただし、すべてのh1
要素にアクセスするため、より具体的には次のindex
ようにアクセスします
document.getElementsByTagName("h1")[0].style.display = "none";
于 2013-02-12T09:11:23.380 に答える