我试图自己找到答案,但没有设法得到任何可以帮助我解决问题的结果。造成这种情况的原因可能是我无法很好地表达我的问题以找到答案,或者没有意识到我在我面前得到了答案而无法理解答案。
由于我的许多谷歌搜索网站出现了,我想在经过两天的搜索后,我应该注册并自己提问。
我做了一个快速的jsfiddle,它基本上解决了我的问题,但代码非常重复,可能适用于几个元素,它会以指数方式炸毁我的网站。
我的jsfiddle:http://jsfiddle.net/3Unhe/1/
答案可能很简单,但我基本上对javascript / jquery一无所知。
我更好地解决这个问题的想法是用简单的英语: 如果#id点击 从所有.container id中删除class .selected 将class .selected添加到.container#id
html:
<div class="titel1">titel</div>
<div class="foto1">foto</div>
<div class="name1">name</div>
<br />
<a href="javascript:void(0);" class="titel">
selected titel
</a>
<br />
<a href="javascript:void(0);" class="foto">
selected foto
</a>
<br />
<a href="javascript:void(0);" class="name">
selected name
</a>
jQuery:
$('.titel').click(function () {
$('.name1').removeClass('selected');
$('.foto1').removeClass('selected');
$('.titel1').addClass('selected');
});
$('.foto').click(function () {
$('.titel1').removeClass('selected');
$('.name1').removeClass('selected');
$('.foto1').addClass('selected');
});
$('.name').click(function () {
$('.foto1').removeClass('selected');
$('.titel1').removeClass('selected');
$('.name1').addClass('selected');
});
css:
.selected {
font-weight:bold;
}
感谢任何帮助。无论你是完全解决它还是提供一个链接/想法来帮助我自己解决它。我不是在这里发帖,因为我很懒,但我无法解决它,我不知道如何更好地表达我的问题,以便自己找到答案。
即使我使用了jquery,我也可以使用javascript。
非常感谢。
Freubau
答案 0 :(得分:1)
尝试:
$('.titel1, .foto1, .name1').on("click",function(){
$("."+$(this).attr("class").substr(0, $(this).attr("class").length-1))
.addClass("selected")
.siblings()
.removeClass("selected");
});
这将查找被点击元素具有相同类名的元素,但没有它的最后一个字符。
F.e。:点击元素.titel1
将
添加&#34; selected
&#34; class to .titel
和
删除&#34; selected
&#34;来自它的兄弟姐妹(.foto
和.name
)
答案 1 :(得分:0)
这里你去=&gt; http://jsfiddle.net/3Unhe/4/
$('.titel1, .foto1, .name1').click(function(){
$(this).siblings('.selected').removeClass('selected');
$(this).addClass('selected');
});