5

Trang web của tôi sử dụng jQuery 1.4.2. Vấn đề là .replaceWith() không hoạt động trong IE6 & IE7 trong jQuery 1.4.2. Có phương pháp thay thế nào được hỗ trợ bởi IE6 & IE7 trong jQuery 1.4.2 không?jQuery .replaceWith() thay thế

Các fiddle là ở đây: http://jsfiddle.net/8CEwf/1/

tôi biết, nó có thể không có vẻ jQuery được gắn liền với nó, nhưng nếu bạn nhìn vào HTML, jQuery là có từ jsFiddle không cung cấp phiên bản 1.4.2

HTML:

<script type="text/javascript" src="//ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script> 
<img src="/v/vspfiles/templates/cyberfront/images/buttons/btn_addtocart_small.gif"> 
<input type="image" src="/v/vspfiles/templates/cyberfront/images/buttons/btn_go_gray.gif"> 
<img src="/v/vspfiles/templates/cyberfront/images/Bullet_MoreInfo.gif"> 

Script:

$(document).ready(function(){ 
$('img[src="/v/vspfiles/templates/cyberfront/images/buttons/btn_addtocart_small.gif"]').replaceWith('<br /><span id="blackbutton" class="mediumbutton" style="display:block;">Add to Cart</span>'); 
$('input[src="/v/vspfiles/templates/cyberfront/images/buttons/btn_go_gray.gif"]').replaceWith('<input type="submit" class="graybutton smallbutton" name="Go" alt="Go" value="Go" title="Go">'); 
$('img[src="/v/vspfiles/templates/cyberfront/images/Bullet_MoreInfo.gif"]').replaceWith('<span class="learnmore">Learn More</span>'); 
}); 

Trả lời

7
$("element").after("text to replace element with").remove(); 

Example.

Chúng tôi chỉ chọn phần tử chúng tôi muốn thay thế, thêm một số văn bản sau đó và xóa nó khỏi DOM.

Giả sử rằng đây là tính năng "Thêm vào giỏ hàng" trên trang web của bạn và tất cả các yếu tố đầu vào sẽ có thuộc tính tương tự src, thì tại sao bạn không thêm lớp học để dễ lựa chọn hơn?

+0

Hoạt động! Cảm ơn bạn. – henryaaron

+0

Không thể sửa đổi các trang cốt lõi ... đó là lý do tại sao tôi phải trải qua toàn bộ trở ngại này. – henryaaron

+0

@ user1090389: Ah, điều đó có ý nghĩa. Xin chúc may mắn! :) – Purag

-4

Đây là triển khai JS trực tiếp của một hàm PHP sẽ đáp ứng nhu cầu của bạn.

http://phpjs.org/functions/str_replace:527

+1

Đây là một biện pháp hoàn toàn không cần thiết để đi đến để đạt được nhiệm vụ đơn giản, đơn giản này. – Purag

+0

Trang web của tôi không phải là PHP – henryaaron

+0

@ user1090389 Đó không phải là PHP, JS của nó. Một phiên bản JS của một hàm PHP. Purmou, Tất nhiên nó không cần thiết, nhưng nó vẫn còn hợp lệ, chỉ là đề xuất một giải pháp thay thế. – TamDenholm

1

Đây là một mẹo khác. Bạn có thể làm trống phần tử trước khi thay thế.

$(document).ready(function(){ 
    $(selector).empty().replaceWith('...'); 
}); 
Các vấn đề liên quan