0

同じ背景画像を持つ多くの div があり、そのうちの 1 つをクリックしたときにこの背景を変更したいと考えています。

私はこのようなものでトレーニングしています:

本体

<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>

CSSで:

#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;
}

その中に自動IDを追加する方法がわかりません。おそらくこれが解決策です。

ヘルプ

4

3 に答える 3

1

マークアップと JavaScript を少し手直しするだけで、これを行うことができます: http://jsfiddle.net/Wrxdy/もちろん、背景はそのままにしておきます。たとえば、色を切り替えているだけです。

于 2012-04-06T22:24:21.577 に答える
0

ID は一意であるため、id タグの代わりに class を使用します。

試す:

<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>
于 2012-04-06T22:24:35.173 に答える
0

同じ ID の問題を修正したら、このコード行が役に立ちます。

$.(ドキュメント).レディ(関数() {

$("#backet-plusminus").click(function() { $('myOjbect').css('background-image', 'url(' + imageUrl + ')'); });

}))

于 2012-04-06T22:26:09.360 に答える