选择一个id与href属性匹配的元素jQuery
选择一个id与href属性匹配的元素jQuery
我想选择一个元素,其id
与元素的
href
相匹配。\nHTML\n
\njQuery\n
$('a').on('click', function(e) { e.preventDefault(); var $href = $(this).attr('href'); var $id = $('div').attr('id'); $(this).addClass('active'); //在这里,我想选择与被点击的的"href"匹配的"id"的$('div').id($href).addClass('active'); });
问题的出现原因是在jQuery的click事件处理程序中,需要选择一个与点击的标签的href属性相匹配的元素。然而,当直接将$href用作选择器时,会出现错误,因为id选择器需要在选择器字符串之前添加一个#符号。
解决方法是在$href之前添加#符号,以便正确选择具有相同id的div元素。在给点击的标签添加active类之后,通过$('#' + $href)选择器来选择与点击的标签的href属性相匹配的div元素,并给其添加active类。
代码如下:
$('a').on('click', function (e) { e.preventDefault(); var $href = $(this).attr('href'); $(this).addClass('active'); $('#' + $href).addClass('active'); // 这就是你需要做的 });
这样,$('#' + $href)选择器就能选择与点击的标签的href属性相匹配的div元素了。
所以,问题的解决方法就是在选择器字符串之前添加#符号,以便正确选择与点击的标签的href属性相匹配的元素。