jQuery-单击多个div';s

jQuery-单击多个div';s,jquery,image,click,Jquery,Image,Click,我有许多具有相同背景图像的div,我想在单击其中一个时更改此背景 我正在接受这样的培训: 正文: <div id="basket-plusminus"></div> ... <div id="basket-plusminus"></div> <script> $("#basket-plusminus").toggle( function () { $(this).addClass("click-plusminus"); }, func

我有许多具有相同背景图像的div,我想在单击其中一个时更改此背景

我正在接受这样的培训:

正文

<div id="basket-plusminus"></div>
...
<div id="basket-plusminus"></div>

<script>
$("#basket-plusminus").toggle(
function () {
$(this).addClass("click-plusminus");
},
function () {
$(this).removeClass("click-plusminus");
}
);
</script>
我不知道如何添加自动id,也许这是一个解决方案。


帮助

对标记和javascript进行一些修改,您可以做到这一点:当然,保留您的背景-例如,我只是切换颜色。

使用id标记的类istead,因为id是唯一的

尝试:


...
$(“.basket plusminus”).切换(
函数()
{
$(this.addClass(“单击plusminus”);
},
函数()
{
$(this.removeClass(“单击plusminus”);
}
);

一旦您解决了相同的ID问题,此代码行将对您有所帮助

$(文档).ready(函数() {

$(“#backet plusminus”)。单击(函数(){$('myOjbect').css('background-image','url('+imageUrl+'));})


})

您有多个元素具有相同的
id
,这是无效的。
id
在文档中必须是唯一的。
#basket-plusminus {
width:11px;
height:11px;
background:url(../img/icons/plus-min.png) no-repeat scroll 0 0 transparent;
cursor:pointer;
}

.click-plusminus {
background-image:url(../img/icons/minus-min.png) !important;
}
<div class="basket-plusminus"></div>
...
<div class="basket-plusminus"></div>

<script>
$(".basket-plusminus").toggle(
    function ()
    {
        $(this).addClass("click-plusminus");
    },
    function ()
    {
        $(this).removeClass("click-plusminus");
    }
);
</script>