jQuery锚点击,“this”,“e.target” - 返回url

时间:2010-07-04 17:59:58

标签: jquery html5 click javascript

我已经从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正在显示

2 个答案:

答案 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;
});