2015-12-14 129 views
0

我有多个在javascript中生成的div,每个div在创建时都有唯一的id属性。单击另一个Div时,使用ID更改Div背景ID

当用户点击Div时,我想设置背景和前景色来表示它已被选中(我有这个工作)。当用户点击另一个Div时,我需要将第一个点击回正常。

不知道该怎么做。现在,当我点击一个div它会改变,但是然后点击另一个它们都显示次要颜色。

当别人被点击时,我不跟踪原始div的id。这是我必须做的吗?

我欣赏的帮助,

+0

检查新类是否存在于当前用户选定元素之外的另一元素上。如果是,则删除该类并向当前选定的元素添加新类。 –

回答

2

上的click事件,您可以将CSS类设置为当前点击股利。这个CSS类将有你想要的背景颜色。

.selected 
{ 
    background-color:green; 
} 

设置在当前点击项目的CSS类之前,获取股利(或多个)与选定的类名,并从这些删除类。

$(function(){ 

    $(document).on("click","div",function(e){ 

    //Get any div(s) with css class "selected" and remove the class 
    $("div.selected").removeClass("selected"); 

    //Set the css class to the clicked div 
    $(this).addClass("selected"); 

    }); 


}) 

更换通用div与您的特定jQuery选择

例如:

$(document).on("click","div.myDiv",function(e){ 

}); 

哪里myDiv是您的div

Here是工作示例的CSS类。

+0

非常感谢。完善! –