
ブラウザーにページを表示させたときに一部の特定の文字だけを違った文字に置き換えたいと思っています。
ページ全体の該当文字ならば、
<script type="text/javascript">
<!--
document.body.innerHTML=document.body.innerHTML.replace(/置換前/g,'置換後');focus();
// -->
</script>
でページ全体の文字が置換できるのですが、下のケースのように一部の場所(DIV内)の場合はどのようにすればよろしいのでしょうか。
<html>
・
・
<div class="sample">
<a href="hogehoge">置換前</a>
</div>
・
・
</html>
よろしくお願いいたします。
No.3ベストアンサー
- 回答日時:
ターゲットが<div>に限られるなら・・・
var allTags = document.getElementsByTagName('div');
for (var i=0;i<allTags.length;i++){
if(allTags[i].className=="sample"){
allTags[i].innerHTML=allTags[i].innerHTML.replace(/置換前/g,'置換後');
}
}
でいいんじゃ、じゃないかしらん??
div に idプロパティが付いていれば、
document.getElementById('xxx').innerHTML.replace(/置換前/g,'置換後');
で、一発だけど・・・。
試したところうまくいきました。
document.getElementById('xxx').innerHTML.replace(/置換前/g,'置換後');
という方法もありますね。う~ん、奥が深いです。
ありがとうございました。
No.2
- 回答日時:
こういうことじゃないですか?
<a href="hogehoge">置換前</a>
<div class="sample">
<a href="hogehoge">置換前</a>
</div>
<a href="hogehoge">置換前</a>
<script language="javascript">
var allTags = document.getElementsByTagName('*');
for (var i =0;i<allTags.length;i++){
if(allTags[i].className=="sample"){
allTags[i].innerHTML=allTags[i].innerHTML.replace(/置換前/g,'置換後');
}
}
<!--
// -->
</script>
No.1
- 回答日時:
簡単に特定できる目印を付けてあればもっと簡単ですが、
リンク(href)がhogehoge で親エレメントがclass="sample" のDIV であるリンクということで、
こんな感じでしょうか・
----------------------------------------------------------------
window.onload=function(){
var aTags = document.getElementsByTagName('a');
var path = location.href.substring(0,location.href.lastIndexOf('/')+1);
for(var i=0;i<aTags.length;i++){
var parentEl = aTags[i].parentNode;
if(parentEl.tagName=='DIV' && parentEl.className=='sample'){
if(aTags[i].href==path+"hogehoge" && aTags[i].innerHTML=="置換前"){
aTags[i].innerHTML="置換後";
}
}
}
};
私の説明不足だったのですが、アンカーのURLはダミーとしていれたもので、それ自体は無関係なものでした。
でも、URLを指定した場合にはこのような使い方もできるんだなと参考になりました。
ありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- JavaScript jQueryでのドラッグアンドドロップについて 1 2022/07/07 21:04
- JavaScript フォームが空欄の時にフォームの外をクリックすると、エラーが出るコードを調べています。 1 2023/06/25 11:51
- JavaScript jqueryを使ったスムーススクロールのコードを書いたのですが、HTMLコード内にある、a butt 2 2022/04/14 10:59
- JavaScript 入力フォームの javascript で メールアドレスの正規チェックをを行い、ボタンをクリックして 2 2022/04/27 16:06
- PHP htmlspecialcharsが機能していないです。 バグですか? 1 2022/04/05 01:22
- JavaScript Javascriptが機能せず原因が分からないので教えて頂きたいです 3 2023/06/04 14:50
- Excel(エクセル) PHPプログラムをエクセルに張り付けると検索ボックスがでてくる! 3 2022/05/08 07:10
- HTML・CSS ボタンをクリックした時に、入力フォームのすぐ下部に、「入力欄が空白です」というテキストメッセージが表 1 2022/04/27 16:25
- Visual Basic(VBA) Excel VBA 教えてください。 VBA初心者です。 詳しい方がいましたら教えてください。 下記 3 2023/04/25 11:22
- PHP ここでの ②if($su_d<>"")の比較演算子 を使う理由は 1 2022/03/26 02:33
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
オブジェクトがぶつかった時の処理
-
cookie を利用して 別ページへ...
-
javascriptで自動計算フォーム...
-
javascriptの記述の誤りを指摘...
-
javascriptでCSVを呼出しvlookup
-
googlemapsAPIでマーカー表示さ...
-
xml+xslでの変換内容をtextareaへ
-
<a>タグのテキストを取得
-
クッキーによるidとパスワード...
-
javascriptでスロットゲームを...
-
onchangeイベントを使ってspan...
-
javascriptであるボタンを押す...
-
javascript 特定のタグのidの存...
-
Enterで次の入力項目へ進むには?
-
RadioButtonListの表示制御
-
JavaScriptのストップウォッチ...
-
JavaScript window.openで開く...
-
多重配列の定義について。【Ruby】
-
javscript超初心者です。
-
プルダウンでテキストエリア表...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ActiveXobjectが作成できない
-
<a>タグのテキストを取得
-
onchangeイベントを使ってspan...
-
任意の座標をクリックさせるには
-
innerHTML実行後のイベント
-
div要素内の全input要素をdisable
-
javascriptを使ったページ内の...
-
onclickを使わずにイベント処理...
-
javascriptで編集可能不可能の...
-
[初心者]javascriptのfor文でな...
-
「エラー:…は宣言されていませ...
-
配列の大括弧と丸括弧はどう違う?
-
Click回数を数え、規定された回...
-
【Tabキー】特定の範囲内だけで...
-
onclickとonkeypressの重複
-
javascriptでCSVを呼出しvlookup
-
HTML:Tableタグに対し、JavaScr...
-
ページ先頭にスムーズに移動(...
-
IE8でdivのcontenteditable=tru...
-
画像の一部を表示
おすすめ情報