HTMLページのspan要素内のテキストの色、フォントサイズ、フォントの太さを変更したいと思います。
私は次のコードを使用しています:
if(window.location.href.indexOf("test") > -1){
var search_span = document.getElementsByClassName("securitySearchQuery");
search_span[0].style.color = "blue";
search_span[0].style.fontWeight = "bold";
search_span[0].style.fontSize = "40px";
}
以下は私のHTMLページのコードです
<h1 class="keyword-title">Search results for<span class="securitySearchQuery"> "hi".</span></h1>
IDで要素を取得することを考えましたが、残念なことに、それらはクラスのみでIDはありません。 HTMLコードを変更するアクセス権はありませんが、外部でWebサイトにjsコードを追加するだけです。
私は他のstackoverflowの投稿を調べようとしましたが、解決策を見つけることができました。 jsとcssが初めてで、どこがおかしいのか教えてください。
_<script>
_を_<body>
_の下部に追加するか、 このStackOverflowの質問 の後にDOMContentLoaded
のイベントリスナーを追加します。
そのスクリプトがコードの_<head>
_セクションで実行される場合、DOMがまだロードされていないため、document.getElementsByClassName(...)
は空の配列を返します。
_Type Error
_を参照しているため_search_span[0]
_を取得していますが、_search_span[0]
_はundefined
です。
これは、DOMがすでにロードされているため、Dev Toolsで実行すると機能します。
現在動作しています。演算子を変更しました>
スニペットで作業するために、見てください:
window.onload = function() {
if (window.location.href.indexOf("test") <= -1) {
var search_span = document.getElementsByClassName("securitySearchQuery");
search_span[0].style.color = "blue";
search_span[0].style.fontWeight = "bold";
search_span[0].style.fontSize = "40px";
}
}
<h1 class="keyword-title">Search results for<span class="securitySearchQuery"> "hi".</span></h1>