2

我正在尝试更改单击时的背景图像。我希望将图像更改为单击的图像的 url,而不是使用要更改的 bg 图像的设置值。

我创建了一个 jsfiddle,其中包含一个我想到的示例。它显示了我目前陷入的困境。它位于此处:http: //jsfiddle.net/CompMike/j8JZ3/27/

这是我尝试过的 jQuery,但它不起作用。我对此很陌生。 switchfg是一个内部带有透明图像的 div。它的背景图像设置为默认值。switchbg是同一页面上的图像列表。单击其中一个时,我需要将该图像设置为 div switchfg的背景。任何帮助将不胜感激。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 回答