我有一个像[简单菜单]这样的div结构:
<div class="float menuA">
<div class="float selected"></div>
<div class="float default"></div>
<div class="float default"></div>
<div class="float default"></div>
<div class="clear"></div>
</div>
当我点击任何类名为“默认”的div时,我想:
.removeClass().addClass()
将名为“selected”的类交换为“default”当类标记包含一个类名时(例如:class =“default”和class =“selected”),当单个类标记中有一个空格分隔的类名列表时,这种方法可以正常工作这么顺利。
问题: 当单个标签中有多个类名时,如何找到class ==“selected”的元素?
任何帮助赞赏的人......
答案 0 :(得分:2)
看起来你正在尝试制作导航菜单。最简单的方法是:
$(function() {
$('div.menuA div.float').click(function() {
$(this).siblings('.selected').removeClass('selected').addClass('default');
$(this).removeClass('default').addClass('selected');
});
});
但这并不能直接回答你的问题。为了“找到”另一个元素的子元素,请使用find()
方法:
// finds all divs with class 'selected' in the div.menuA div
$('div.menuA').find('.selected');
如果您想跳过额外的find()
电话,您可以将这些点连接在一起:
// selects divs with the classes 'selected' and 'default'
$('div.menuA div.selected.default');
答案 1 :(得分:1)
$('.default').click(function(){
$('.selected').removeClass('selected').addClass('default');
$(this).removeClass('default').addClass('.selected');
});