こんにちは。
クラス属性で区切られた中の文字列を読み取り、ある文字が含まれると、画像を表示する(背景画像としても可)ということがjavascriptでどのように書けばいいでしょうか。
例えば
<div class="comment">今日は晴れです。</div>
とあった場合、このclass="comment"内に晴れという文字があれば、「今日は晴れです。」の文字のあとに晴れの画像を表示するような。
雨という文字が含まれたら雨の画像を表示するといった具合です。
曜日ごとや日にちごとで画像を表示するというのはわかったのですが、ページの一部の文字を検索して判断させるということがわかりません。
よろしくお願い致します。
A 回答 (1件)
- 最新から表示
- 回答順に表示
No.1
- 回答日時:
>ページの一部の文字を検索して判断させるということがわかりません。
getElementsByClass で検索するといくつか該当するサイトの1つ
http://www.dustindiaz.com/getelementsbyclass/
を使えば
var els = getElementsByClass('comment',null,'div');
の様にしてdiv でclass="commnet" のエレメントの配列が得られる。
els[n].innerHTML でその内部の文字列が得られるので、
indexOf を使って、含まれている文字列があるかどうかを調べることができる。
----------------------------------------------------------------
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=SHIFT_JIS">
<title>Sample</title>
<script type="text/javascript"><!--
function getElementsByClass(searchClass,node,tag) {
var classElements = new Array();
if ( node == null )
node = document;
if ( tag == null )
tag = '*';
var els = node.getElementsByTagName(tag);
var elsLen = els.length;
var pattern = new RegExp("(^|\\s)"+searchClass+"(\\s|$)");
for (var i = 0, j = 0; i < elsLen; i++) {
if ( pattern.test(els[i].className) ) {
classElements[j] = els[i];
j++;
}
}
return classElements;
}
window.onload=function(){//読込後に実行
var els = getElementsByClass('comment',null,'div');
for(var i=0;i<els.length;i++){
if(els[i].innerHTML.indexOf("晴れ")!=-1){
alert(els[i].innerHTML + "に'晴れ'が含まれている");
}
}
};
//-->
</script>
</head>
<body>
<div class="comment">今日は晴れです。</div>
<div class="comment">今日は雨です。</div>
<div class="double comment">明日は晴れです</div>
<div>クラス指定無し</div>
</body>
</html>
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- PHP アップロード画像数でCSSを分けることに成功したのですが、画像の横に文字を並べることが出来ません。 3 2023/07/28 17:16
- JavaScript フォームが空欄の時にフォームの外をクリックすると、エラーが出るコードを調べています。 1 2023/06/25 11:51
- HTML・CSS 要素の幅をいろんな写真の幅に合わせたい。 1 2022/07/25 20:11
- JavaScript jqueryを使ったスムーススクロールのコードを書いたのですが、HTMLコード内にある、a butt 2 2022/04/14 10:59
- WordPress(ワードプレス) ワードプレスで、左寄せ画像と文字を横並びにせず、画像の下に文字を表示される方法を教えてください 1 2022/04/24 11:06
- Excel(エクセル) PHPプログラムをエクセルに張り付けると検索ボックスがでてくる! 3 2022/05/08 07:10
- JavaScript Javascriptが機能せず原因が分からないので教えて頂きたいです 3 2023/06/04 14:50
- HTML・CSS ヘッダーの画像にメインエリアがかぶってしまいます 1 2022/11/28 14:06
- PHP PHPの構文で間違えが分からない 5 2022/07/11 16:38
- HTML・CSS サルワカさんの吹き出しのスタイルシートについて。 https://saruwakakun.com/h 2 2022/10/28 22:55
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・プリン+醤油=ウニみたいな組み合わせメニューを教えて!
- ・タイムマシーンがあったら、過去と未来どちらに行く?
- ・遅刻の「言い訳」選手権
- ・【大喜利】【投稿~11/12】 急に朝起こしてきた母親に言われた一言とは?
- ・好きな和訳タイトルを教えてください
- ・うちのカレーにはこれが入ってる!って食材ありますか?
- ・好きな「お肉」は?
- ・あなたは何にトキメキますか?
- ・おすすめのモーニング・朝食メニューを教えて!
- ・「覚え間違い」を教えてください!
- ・とっておきの手土産を教えて
- ・「平成」を感じるもの
- ・秘密基地、どこに作った?
- ・【お題】NEW演歌
- ・カンパ〜イ!←最初の1杯目、なに頼む?
- ・一回も披露したことのない豆知識
- ・これ何て呼びますか
- ・初めて自分の家と他人の家が違う、と意識した時
- ・「これはヤバかったな」という遅刻エピソード
- ・これ何て呼びますか Part2
- ・許せない心理テスト
- ・この人頭いいなと思ったエピソード
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・ハマっている「お菓子」を教えて!
- ・【大喜利】【投稿~11/1】 存在しそうで存在しないモノマネ芸人の名前を教えてください
- ・好きなおでんの具材ドラフト会議しましょう
- ・餃子を食べるとき、何をつけますか?
- ・あなたの「必」の書き順を教えてください
- ・ギリギリ行けるお一人様のライン
- ・10代と話して驚いたこと
- ・つい集めてしまうものはなんですか?
- ・自分のセンスや笑いの好みに影響を受けた作品を教えて
- ・【お題】引っかけ問題(締め切り10月27日(日)23時)
- ・大人になっても苦手な食べ物、ありますか?
- ・14歳の自分に衝撃の事実を告げてください
- ・【大喜利】【投稿~10/21(月)】買ったばかりの自転車を分解してひと言
- ・ホテルを選ぶとき、これだけは譲れない条件TOP3は?
- ・家・車以外で、人生で一番奮発した買い物
- ・人生最悪の忘れ物
- ・【コナン30周年】嘘でしょ!?と思った○○周年を教えて【ハルヒ20周年】
- ・あなたの習慣について教えてください!!
- ・都道府県穴埋めゲーム
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
javascriptに関する質問です。(...
-
ローカルにあるファイルを検索...
-
スマートフォンで動かない
-
C#OpenCv V4にのエラーに関する...
-
Dreamweaverでランダム表示
-
javaが全くわからないので教え...
-
javascript修正依頼
-
ウィンドウリサイズ、ツールバ...
-
Google Maps API v2 ルートのシ...
-
ページを読み込む前にリダイレ...
-
フォルダ名をフォルダ内のテキ...
-
GASでundefinedエラーが出ます
-
ジェネレーターの作り方
-
javascriptカウントタイマー設...
-
スマフォではボタンを表示させ...
-
google apps scriptの終了のさせ方
-
リンク集をCSVファイルで管理し...
-
javascriptでiframeのURL変更は?
-
タイピングゲームの異なるロー...
-
jquaryでsettimeは
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
google apps scriptの終了のさせ方
-
C#OpenCv V4にのエラーに関する...
-
ジェネレーターの作り方
-
GASでundefinedエラーが出ます
-
ASP.NETのコントロールの値をJa...
-
C#で、ContextMenuStripに動的...
-
翌月を取得するGASが分かりません
-
gas スプレッドシートがアクテ...
-
ASP.NET MVCでObjectをjsに渡す
-
シンプルなweb版スタンプラリー...
-
ローカルにあるファイルを検索...
-
なぜmatchメソッドがエラーにな...
-
VSCODE[Python]の設定について
-
1日1回だけ引けるjavascriptお...
-
javascriptでiframeのURL変更は?
-
html javascript リンク先アド...
-
googleスプレッドシートのApps ...
-
lengthが読めない理由が分からない
-
【javascript】正規表現で括弧...
-
HTMLにWSHを組み込む
おすすめ情報