2013-02-03 83 views
1

如果img位於後臺屬性而不是src,如何執行以下操作?jQuery替換帶替換函數的背景圖片

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")); 

回答

2

這是一個很大更好地定義類爲這些不同的背景,只是添加和刪除類,而不是這個脆弱的方式但是,這裏是如何完成的,

var backGroundImage = $('#someimg').css('background-image'); 
$('#someimg').css('background-image', backGroundImage.replace("_1","_2")); 
+0

謝謝你這個作品完美=] - 不知道你m關於這些課程,有潛在的100圖像改變,在我的情況下,類可能不實際.. – bushdiver

+0

如果你有100張圖像,那麼我想你做的很好!很高興我能幫助:) –

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