具有相同类的多个div的特定div的CSS

时间:2015-03-30 07:10:51

标签: javascript jquery html css

我有同一个班级的多个div。 当用户点击一个div我有一个slidetoggle(),我有两个按钮"接受"并且"拒绝"。现在,当用户点击接受或拒绝时,我希望该特定div根据接受或拒绝将颜色更改为绿色或红色。

但是当我尝试为所有div改变颜色分配颜色时。

无论如何都要改变特定div的颜色。

$(document).on("pagecreate","#one1",function(){
    $("div.comp2").on("tap",function(){
    $("#panel").slideToggle("slow", function(){
        $("#accept").on("click",function(){
            $("div.comp2").css("background-color","#22bb45"); 
        });
    });
    });
});

2 个答案:

答案 0 :(得分:1)

在事件处理程序中,您可以使用this关键字仅引用引发事件的元素,而不是按类选择所有元素。试试这个:

$(document).on("pagecreate","#one1",function(){
    $("div.comp2").on("tap", function() {
        var $comp2 = $(this);
        $("#panel").slideToggle("slow", function(){
            $("#accept").on("click", function(){
                $comp2.css("background-color","#22bb45"); 
            });
        });
    });
});

答案 1 :(得分:1)

$(document).on("pagecreate","#one1",function(){
    $("div.comp2").on("tap",function(){
    var __this = this;
    $("#panel").slideToggle("slow", function(){
        $("#accept").on("click",function(){
            $(__this).css("background-color","#22bb45"); 
        });
    });
    });
});