2

クリック時に背景画像を変更しようとしています。bg画像の設定値を使用する代わりに、クリックした画像のURLに画像を変更したいと思います。

私が考えていることの例を使ってjsfiddleを作成しました。それは私が現在立ち往生している場所を示しています。ここにあります:http://jsfiddle.net/CompMike/j8JZ3/27/

これは私が試したjQueryですが、機能していません。私はこれにかなり慣れていません。 switchfgは、内部に透明な画像があるdivです。背景画像がデフォルト値に設定されています。switchbgは、同じページにある画像のリストです。それらの1つをクリックすると、その画像をdivswitchfgの背景に設定する必要があります。どんな助けでも大歓迎です。http://jsfiddle.net/CompMike/j8JZ3/27/

jQuery(document).ready(function() {

var switchfg = jQuery('.light-switch');
var switchbg = jQuery('.switchbg img');

switchbg.on("click", function() {
    var img = $(this).attr('src');
    switchfg.css('background-image', function() {
        'url(' + img + ');' 
    });
   });
});​
4

2 に答える 2

2

次のように、背景を直接(関数なしで)設定する必要があります。

switchfg.css('background-image', 'url(' + img + ')');

背景を表示するには、.light-switch div に幅と高さも指定する必要があります。

于 2012-10-01T20:45:07.720 に答える
1

私はあなたのスクリプトを更新しました:

http://jsfiddle.net/j8JZ3/35/

まず第一に、$.css() 内の function() というコードに混乱がありました。削除しただけです。

しかし、本当の問題は、CSSファイルで宣言したことでした

background: url(....)

JavaScript では、次のように変更します。

background-image: .....

だから私は両方を変更しbackground: url(....)、それはうまくいきました。

于 2012-10-01T20:46:18.127 に答える