私はJavascriptで置き換える方法を理解しようとしています。私はページの本文全体を見ていて、HTMLタグ内で一致しないキーワードを置き換えたいと考えています。ここでJavaScriptで、タグに影響を与えずにHTMLページのテキストを置き換えるにはどうすればよいですか?
は一例です:
<body>
<span id="keyword">blah</span>
<div>
blah blah keyword blah<br />
whatever keyword whatever
</div>
</body>
<script type="text/javascript">
var replace_terms = {
'keyword':{'url':'http://en.wikipedia.org/','target':'_blank'}
}
jQuery.each(replace_terms, function(i, val) {
var re = new RegExp(i, "gi");
$('body').html(
$('body').html().replace(re, '<a href="'+ val['url'] +'" target="'+val['target']+'">' + i + '</a>')
);
});
</script>
私は(<
と>
間)HTMLタグ内にない「キーワード」のすべてのインスタンスを置き換えるために探しています。
「キーワード」がscript
またはstyle
の要素内にある場合は、無視する必要があります。
は、HTMLタグ内の定義によってページ全体ではないですか? –
はい。私の例で持っていたHTMLは出てこなかった。基本的には、タグの属性を置き換えたくないということです。 – Phil
私は彼が(属性名/値のように)括弧内にあることを意味していると思っています。 – Mayo