5

我的网站使用 jQuery 1.4.2。问题是.replaceWith()在 jQuery 1.4.2 的 IE6 和 IE7 中不起作用。jQuery 1.4.2 中是否有 IE6 和 IE7 支持的替代方法?

小提琴在这里:http: //jsfiddle.net/8CEwf/1/

我知道,它似乎没有附加 jQuery,但如果你查看 HTML,jQuery 就在那里,因为 jsFiddle 不提供版本 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">

脚本:

$(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>');
});
4

3 回答 3

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

例子

我们只需选择要替换的元素,在其后添加一些文本,然后将其从 DOM 中删除。

假设这是针对您网站上的“添加到购物车”功能,并且所有输入都具有相似的src属性,那么为什么不向它们添加一个类以使选择更容易?

于 2011-12-20T02:26:42.300 回答
1

这是另一个技巧。您可以在替换之前清空元素。

$(document).ready(function(){
     $(selector).empty().replaceWith('...');
});
于 2014-01-16T08:58:32.767 回答
-4

这是一个可以满足您需求的 PHP 函数的直接 JS 实现。

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

于 2011-12-20T02:36:31.230 回答