同じクラスを共有する 6 つの異なるスパンの 6 つの異なる数値に同じ数学的変更を適用しようとしています。この HTML では:
<span class="PageText_L483n">$8.00</span>
<span class="PageText_L483n">$9.00</span>
<span class="PageText_L483n">$10.00</span>
<span class="PageText_L483n">$11.00</span>
<span class="PageText_L483n">$12.00</span>
<span class="PageText_L483n">$13.00</span>
私はもともとこのJSを持っていました:
$(function() {
var price = parseFloat($('.PageText_L483n').text().substr(1));
var discount = price * 0.2;
var newPrice = price - discount;
var newText = '<div>$' + price + '</div> $' + newPrice;
$('.PageText_L483n').html(newText);
$('.PageText_L483n div').css("text-decoration", "line-through");
});
しかし、これは単にすべてのスパンを最初のスパンからの情報に置き換えるだけです。そこで、この JS で配列を使用しようとしました。
$(function() {
var prices = [];
for (var i = 0; i < 6; i++) {
prices[i] = parseFloat($('.PageText_L483n:nth-of-type(i+1)').text().trim().substr(1));
}
for (var j = 0; j < 6; j++) {
var discount = prices[j] * 0.2;
var newPrice = prices[j] - discount;
var newText = '<div>$' + prices[j] + '</div> $' + newPrice;
$('.PageText_L483n').html(newText);
$('.PageText_L483n div').css("text-decoration", "line-through");
}
});
しかし、今は何もしません。誰かが私を正しい方向に向けることができますか?
JSFiddle: http://jsfiddle.net/vSePd/