ブラウザーにページを表示させたときに一部の特定の文字だけを違った文字に置き換えたいと思っています。
ページ全体の該当文字ならば、
<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ランキング
-
<a>タグのテキストを取得
-
ActiveXobjectが作成できない
-
javascriptで自動計算フォーム...
-
HTML:Tableタグに対し、JavaScr...
-
onchangeイベントを使ってspan...
-
日本語入力の禁止
-
【Tabキー】特定の範囲内だけで...
-
配列の大括弧と丸括弧はどう違う?
-
div要素内の全input要素をdisable
-
同じIDで定義した要素の配列を...
-
functionから別のfunctionを実...
-
javascriptとphpの連携で疑問
-
Javascriptグローバル変数の値...
-
関数でy=g(x)のgとは何の略です...
-
JavaScriptでの動的な多次元配...
-
C#テキストボックスの文字を配...
-
javascriptで文字挿入でtoggle...
-
GASでGoogleフォームの自動返信...
-
window.openでタイトル名の指定
-
第3日曜日のみの日付を取得、...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
<a>タグのテキストを取得
-
ActiveXobjectが作成できない
-
onchangeイベントを使ってspan...
-
HTML:Tableタグに対し、JavaScr...
-
任意の座標をクリックさせるには
-
モーダルダイアログウィンドウ...
-
innerHTML実行後のイベント
-
Click回数を数え、規定された回...
-
javascript 特定のタグのidの存...
-
[初心者]javascriptのfor文でな...
-
【Tabキー】特定の範囲内だけで...
-
javascriptでスロットゲームを...
-
JavaScriptとcookieを利用して...
-
日本語入力の禁止
-
javascriptで、表示されている...
-
javascriptで編集可能不可能の...
-
画像の一部を表示
-
DIV内のDIV要素を移動する。
-
javascript の 命令文の記述で...
-
重複しないくじの作り方がわか...
おすすめ情報