我有大约6个具有相同类的div元素。当我将鼠标悬停在其中任何一个上面时,我想在它们旁边显示另一个div。
我正在考虑给他们所有形式为id =“mydiv-divname”的id,其中mydiv-将永远是常量。
我如何引用mydiv- *元素。我找不到确切的语法,但我认为应该是$(“#mydiv - ”[*]),其中*表示某种通配符。
答案 0 :(得分:3)
身份证的目的是什么?如果它们都标有相同的类名,则可以按类访问它们:
`$(".className")...
要在其中一个元素悬停时触发事件,请使用
`$(".className").hover(... )
请注意,hover()中的函数只会被实际悬停的元素触发。
他们做了类似于你想要实现的事情here - 在悬停时淡入或淡出一个元素(标记有该类的页面上的许多元素)
答案 1 :(得分:2)
为什么不能在选择器中使用类而不是id,如
jQuery('.commonClass');
答案 2 :(得分:2)
你似乎想要这样的事情:
HTML:
<div class="content" id="con_a">Hello world.</div>
<div id="show_con_a" style="display:none">Show Me on content div "a" hover</div>
<div class="content" id="con_b">Nice to meet you.</div>
<div id="show_con_b" style="display:none">Show Me on content div "b" hover</div>
<div class="content" id="con_c">See you later.</div>
<div id="show_con_c" style="display:none">Show Me content div "c" hover</div>
JAVASCRIPT:
//Collect all divs with 'content' class
$('.content').each(function(){
//Set mouse handler for each content div
$(this).hover(function(){
$('#show_' + this.id).show();
},
function(){
$('#show_' + this.id).hide();
});
});
替代JAVASCRIPT:
//Collect all divs with an id that begins with 'con_'
$("[id=^'con_']").each(function(){
//Set mouse handler for each content div
$(this).hover(function(){
$('#show_' + this.id).show();
},
function(){
$('#show_' + this.id).hide();
});
});