2

jQueryを使用してクリック時に画像のsrc属性を変更したいと思います。HTMLは次のとおりです。

<a href="#" class="view2">View 2</a>
<img src="images/shoe1a.jpg" class="sb-player" />

そして、img src で、「a」を「b」に置き換えたいのですが、次のようにも見える可能性があるため、その前にある「1」を無視したいという問題があります。

<img src="images/shoe2a.jpg" class="sb-player" />

私は jQuery でここまでやってきました。アスタリスクは、ワイルドカード文字が必要な場所です。

$(function() {
    $('.view2').click(function() {
        $('.sb-player').attr('src', 'images/shoe'+*+'b.jpg');
        return false;
    });
});

任意の数字のワイルドカードになる特定の文字はありますか?

4

2 に答える 2

3

文字列の末尾.replace()全体を.srcに置き換えます。a.jpgb.jpg

に関数.attr()渡すことができます。

パラメータiは、セット内の現在の反復を表し、val現在の値です。戻り値は新しい値を表します。

$(function() {
    $('.view2').click(function() {
        $('.sb-player').attr('src', function(i,val) { 
             return val.replace('a.jpg','b.jpg');
        });
        return false;
    });
});
于 2010-12-13T21:53:35.680 に答える
1

文字列の任意の部分を照合する最も強力な方法は、javascript で正規表現を使用することです。

たぶん、この方法で問題を解決できます:


$(function() {
    $('.view2').click(function() {
        var originalSrc = $('.sb-player').attr('src');
        $('.sb-player').attr('src', originalSrc.replace(/a\./,"b."));
        return false;
    });
});
于 2010-12-13T22:10:23.070 に答える