5

私のサイトはjQuery1.4.2を使用しています。問題は.replaceWith()、jQuery1.4.2のIE6およびIE7では機能しないことです。jQuery 1.4.2のIE6およびIE7でサポートされている代替方法はありますか?

フィドルはここにあります:http://jsfiddle.net/8CEwf/1/

jQueryがアタッチされていないように見えるかもしれませんが、HTMLを見ると、jsFiddleはバージョン1.4.2を提供していないため、jQueryはそこにあります。

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から削除するだけです。

これがWebサイトの「カートに追加」機能用であり、すべての入力が同様の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 に答える