我创建了一个简单的"显示和隐藏"使用Jquery切换,但我希望它特定于每个div,因为我将重用Class。
我知道我必须使用(this)函数,但似乎无法正确放置它。
非常感谢你的帮助。 $(document).ready(function() {
$('.showmenu').click(function() {
$('.menu').toggle("toogle");
});
});
答案 0 :(得分:1)
我建议:
$(document).ready(function () {
// attaching the click-event handler to the class:
$('.showmenu').click(function () {
// this is the DOM node of the clicked-element,
// $(this) is the jQuery object formed from the clicked DOM node
$(this)
// traverses to the next sibling of the clicked element,
// if it's a 'div' with the 'menu' class-name:
.next('div.menu')
// toggles that element:
.toggle("toogle");
});
});
$(document).ready(function () {
$('.showmenu').click(function () {
$(this).next('div.menu').toggle("toogle");
});
});
<div class="showmenu">Click Here</div>
<div class="menu" style="display: none;">
<ul>
<li>Button1</li>
<li>Button2</li>
<li>Button3</li>
</ul>
</div>
<div class="showmenu">Click Here</div>
<div class="menu" style="display: none;">
<ul>
<li>Button1</li>
<li>Button2</li>
<li>Button3</li>
</ul>
</div>
参考文献:
推荐阅读:
答案 1 :(得分:1)
使用next()
。例如:
$(document).ready(function() {
$('.showmenu').click(function() {
$(this).next('.menu').toggle("toogle");
});
});
答案 2 :(得分:1)
你可以试试......
$(document).ready(function() {
$('.showmenu').click(function() {
$(this).next().toggle("toggle");
});
});
答案 3 :(得分:0)