我正在玩一些Jquery作为业余爱好而且我遇到了更改用户点击的属性的问题。我有很多标签,并且不想为每个标签创建一个事件,所以我试图将它们全部合并到一起。
对不起,如果它有点不清楚,我真的不知道Jquery事情的词汇。
var tabSelected = "default";
$('body').on("click",".subtab", function() {
var tabChosen = this.id;
tabChosen = tabChosen.substring(0, tabChosen.length-1); //cuts off T
tabChosen = "'#" + tabChosen + "'"; //puts into '#id' format
$(tabChosen).css('background-color','#E53939');
$(tabSelected).css('background-color','#FFFFFF');
tabSelected = tabChosen;
});
为了澄清我对标签和子标签使用单独的ID,因此对于具有Home id的div,单击的子标签的id是HomeT。那么TabChosen将是HomeT,我一直试图操纵我常用的$('#id')我使用的东西,其中id必须是Home而不是HomeT。
我试图更改所点击内容的颜色。此外,我希望用户所在的选项卡更改回默认颜色。
感谢任何帮助。
答案 0 :(得分:1)
这样做: tabChosen =“#”+ tabChosen; //放入'#id'格式
答案 1 :(得分:0)
有一种方便的方法来实现这一目标。但它要求所有目标元素都具有相同的类,如下所示:
<html>
<script>
$(document).ready(function(){
$('.subtab').click(function(){
$(this).css('background-color', '#E53939')
$(this).siblings().css('background-color', '#FFFFFF')
})
})
</script>
<body>
<div id="t1T" class="subtab">t1</div>
<div id="t2T" class="subtab">t2</div>
<div id="t3T" class="subtab">t3</div>
</body>
</html>