Tôi có ở đâu đó trên trang web một đoạn văn bản cụ thể, giả sử "lollypops" và tôi muốn thay thế tất cả các lần xuất hiện của chuỗi này bằng "marshmellows". Vấn đề là tôi không biết chính xác văn bản ở đâu. Tôi biết tôi có thể làm điều gì đó như:
$(body).html($(body).html().replace('lollypops', 'marshmellows'));
Điều này có thể sẽ hiệu quả, nhưng tôi cần viết lại ít HTML nhất có thể, vì vậy tôi đang nghĩ một điều gì đó như:
- tìm kiếm chuỗi
- tìm phần tử mẹ gần nhất
- chỉ viết lại phần tử cha gần nhất
- thay thế điều này ngay cả trong các thuộc tính, nhưng không phải tất cả, chẳng hạn như thay thế nó trong
class
, nhưng không thay thế trongsrc
Ví dụ, tôi sẽ có cấu trúc như thế này
<body>
<div>
<div>
<p>
<h1>
<a>lollypops</a>
</h1>
</p>
<span>lollypops</span>
</div>
</div>
<p>
<span class="lollypops">Hello, World!</span>
<img src="/lollypops.jpg" alt="Cool image" />
</p>
<body>
Trong ví dụ này, mọi sự xuất hiện của "vòng lặp" sẽ được thay thế, chỉ <img src="...
giữ nguyên và các phần tử duy nhất thực sự được thao tác sẽ là <a>
và cả hai <span>
.
Có ai biết làm thế nào để làm điều này?