2010-02-22 82 views
2

我想要得到jquery中当前点击链接的句柄。假设,我有一堆里一个元素:如何选择jquery.localscroll中当前点击过的锚点元素?

HTML

<ul id="navigation" class="main_menu"> 
    <li><a href="#panel_home">Home</a></li> 
    <li><a href="#panel_story">Story</a></li> 
    <li><a href="#panel_mantra">Mantra</a></li> 
    <li><a href="#panel_showcase">Showcase</a></li> 
    <li><a href="#panel_experience">Experience Us</a></li> 
</ul> 

jquery

$(document).ready(function() { 
    $("#navigation").localScroll({ 
     hash: false, 
     onAfter: function(e, anchor, $target) { 
      // some magic code here, to get the anchor element which was clicked 
      // how do I use the 'e', 'anchor' and '$target' parameter to get the anchor? 
     } 
    } 
}); 

如果你可以只警告()的锚文本或HREF,我会在我的方式...

请注意:我不想设置hash: true由于某种原因。

回答

1

您应该只需将另一个click()事件添加到a元素即可。 localScroll()内部是否有需要完成的原因?

$('#navigation a').click(function() { 
    alert($(this).attr('href')); 
}); 

或者,如果你不想点击a元素的默认行为,使用以下命令:

$('#navigation a').click(function(event) { 
    event.preventDefault(); 
    alert($(this).attr('href')); 
}); 
+0

yea..there是有原因的。我想捕获用户点击并启动滚动的特定锚点元素。一旦我获得锚点,我会读取它的href值,并进行进一步的操作来完成工作。 – detj 2010-02-22 20:08:02