我已经从Mootools切换到jQuery,因为我认为它有更好的支持。我有这样的HTML:
<ul class="menuHandler">
<li class="menuTreeElement activeOpt" id="menuOpt1">
<ul id="menuOpt1Content">
<li><a href="#" class="menuOpener">Opcje</a><a href="#" class="sprite menuOpener"></a></li>
<li class="submenuElement">Opcje</li>
<li class="submenuElement">Opcje</li>
<li class="submenuElement">Opcje</li>
<li class="submenuElement">Opcje</li>
<li class="submenuElement">Opcje</li>
<li class="submenuElement">Opcje</li>
</ul>
</li>
</ul>
JS
jQuery(document).ready(function($)
{
$('.menuTreeElement .submenuElement').hide();
$('.menuHandler li.menuElement, .menuHandler li.menuTreeElement').removeClass('activeOpt');
$('.menuHandler li.menuElement, .menuHandler li.menuTreeElement').addClass('inactiveOpt');
$('.menuHandler li.menuElement a.menuOpener, .menuHandler li.menuTreeElement a.menuOpener').click(function(e){
e.preventDefault();
alert(this);
alert(this.id);
alert($(this));
alert(e.target);
alert(e.target.id);
alert($(e.target));
});
});
结果:
URL,空警报,[对象对象],URL,空警报,[对象对象]。我不知道该怎么办。链接是否有帮助:http://misiur.com/CRP/admin/
我想实现这个目标: 1.单击带有menuOpener类的a 2.同一个ul(在这种情况下是menuOpt1Content)中显示类submenuElement的所有li正在显示
答案 0 :(得分:5)
$('ul.menuHandler').delegate('a.menuOpener', 'click', function(ev){
//prevent follow of link
ev.preventDefault();
//create a jquery object with the anchor element
var $anchor = $(this);
//get parent li with class menuTreeElement
var $li = $anchor.closest('li');
//get its siblings and show???
$li.nextAll().show()
});
答案 1 :(得分:0)
$('.menuTreeElement .menuOpener').click(function(event)
{
event.preventDefault();
$('.menuTreeElement .submenuElement').hide();
$(this).parent().find('.submenuElement').show();
return false;
});