Tôi đang cố gắng tìm ra cách thay thế bằng Javascript. Tôi đang xem toàn bộ nội dung của trang và muốn thay thế từ khóa phù hợp KHÔNG trong thẻ HTML.Trong JavaScript, làm thế nào tôi có thể thay thế văn bản trong một trang HTML mà không ảnh hưởng đến các thẻ?
Dưới đây là một ví dụ:
<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>
tôi đang tìm để thay thế tất cả các trường hợp của "keyword" đó không phải là trong một thẻ HTML (giữa <
và >
).
Tôi đoán tôi cũng cần bỏ qua nếu "từ khóa" nằm trong thành phần script
hoặc style
.
Không phải là toàn bộ trang theo định nghĩa bên trong một thẻ HTML? –
Có. HTML tôi đã có trong ví dụ của tôi đã không đi qua. Về cơ bản tôi có nghĩa là tôi không muốn thay thế bất kỳ thuộc tính nào của thẻ. – Phil
Tôi nghĩ rằng anh ấy có nghĩa là trong dấu ngoặc đơn (như tên/giá trị thuộc tính). – Mayo