1

img が src ではなく background プロパティにある場合、次のことを行うにはどうすればよいですか?

this.src = this.src.replace("_1","_2");

CSS:

#someimg {  
    background:url('someimg_1.jpg');
}

何かのようなもの:

$('#someimg').css.('background-image',
    $(this).css('background-image').replace("_1","_2"));
4

2 に答える 2

2

この脆弱な方法ではなく、これらのさまざまな背景用にクラスを定義し、クラスを追加および削除する方がはるかに優れていますが、これを行う方法は次のとおりです。

var backGroundImage = $('#someimg').css('background-image');
$('#someimg').css('background-image', backGroundImage.replace("_1","_2"));
于 2013-02-03T04:13:29.043 に答える
0

LIVE DEMO

var src2 = $('#someimg').attr('src').replace('_1', '_2');
$('#someimg').attr( 'src', src2 );

または、必要に応じて、次のようにすることもできます。

var $omeimg = $('#someimg');
$omeimg.attr('src', $omeimg.attr('src').replace('_1', '_2') );

これはあなたがしていたことに最も似ていますが、あなたの例では2つの小さなエラーがありました:

$('#someimg').css.('background-image',  $(this).css('background-image').replace("_1","_2"));
//               ^---- this dot         ^^^^^^^---- and this undefined
于 2013-02-03T04:13:51.180 に答える