【问题标题】:jquery change div background image clickjquery改变div背景图片点击
【发布时间】:2013-05-29 22:45:49
【问题描述】:

嗨,我不知道如何更改 div 背景图像,所以这里是它应该如何工作

我有一些带有 onclick="change_color()" 的图像和一些带有 onclick="get_color()" 的 div,我想要的是当我单击图像时我应该获取图像 src,然后在我单击之后在 div 上,div 将从上一个点击的图像中获取背景图像。

我所做的就是获取图像 src

$(document).click(function(e) {
   e = e || event;
   $.lastClicked = e.target || e.srcElement;
   $.lastClicked2 = e.target || e.srcElement;
  });

function change_color()
{
var lastClickedElement = $.lastClicked;
lastClickedElement.getAttribute('data-color');
}

请帮帮我。

【问题讨论】:

    标签: jquery


    【解决方案1】:

    删除内联 javascript,并改为向 div 和图像添加一个类。我将使用.change_color 用于 div,.lastimage 用于图像:

    var bgImage = null;
    
    $('img.lastimage').on('click', function() {
        bgImage = this.src;
    });
    
    $('div.change_color').on('click', function() {
        if (bgImage) $(this).css('background-image','url('+bgImage+')')
    });
    

    FIDDLE

    【讨论】:

    • 非常感谢,我不知道为什么我的代码如此复杂......再次感谢您!
    • 你又在问我什么时候问,不让我获得 1k 声望 :P :(
    • @WooCaSh - 抱歉,我至少会支持你的答案?你去 1K!
    • @adeneo 查看我的个人资料描述和Successes on Stack Overflow:sextion :)
    • @adeneo -80 reversal Serial upvoting reversed :/
    【解决方案2】:

    试试这个:

    $(function(){
        var lastSrc = '';    
    
        $('img').on('click', function(){
            lastSrc = $(this).attr('src');
        });
    
        $('div').on('click', function(){
            $(this).css('background-image','url('+ lastSrc +')')
        });
    });
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-07-13
      • 2012-02-02
      • 1970-01-01
      • 1970-01-01
      • 2014-01-29
      • 1970-01-01
      • 1970-01-01
      • 2010-09-20
      相关资源
      最近更新 更多