将JavaScript函数附加到处理请求的标准链接?

将JavaScript函数附加到处理请求的标准链接?,javascript,jquery,filtering,flowdock,Javascript,Jquery,Filtering,Flowdock,我的页面上有几个div属于同一个类,其中包含简短的语句,带有FlowDock自动生成的链接(将链接添加到@references) 有没有一种方法不将用户重定向到另一个URL,而是在用户单击该链接时调用函数,该链接将过滤该页面上的语句,只显示包含所单击的@Reference的.entry div 下面是一个例子: <div class='entry' data-hashtags='#supermarkets #food #alcohol'> <p>#supermar

我的页面上有几个div属于同一个类,其中包含简短的语句,带有FlowDock自动生成的链接(将链接添加到@references)

有没有一种方法不将用户重定向到另一个URL,而是在用户单击该链接时调用函数,该链接将过滤该页面上的语句,只显示包含所单击的@Reference的.entry div

下面是一个例子:

<div class='entry' data-hashtags='#supermarkets #food #alcohol'>
    <p>#supermarkets sell #food and #alcohol <a title="Search @private" class="app-tag-link" href="/context/@private">@private</a></p>
</div>

#超市出售食品和酒精

用户单击@private,而不是转到/context/@private,调用了一个JavaScript函数,该函数通过jQuery过滤div,原样


谢谢你的帮助

确定-您希望将侦听器附加到链接并调用
preventDefault
以防止链接的默认行为(即重定向)

不使用jQuery:

element.addEventListener('click', function(e) {
  e.preventDefault();
  // Filter
});
// jQueryObject holds the selected set of element(s)
jQueryObject.on('click', function(e) {
  e.preventDefault();
  // Filter
});

使用jQuery:

element.addEventListener('click', function(e) {
  e.preventDefault();
  // Filter
});
// jQueryObject holds the selected set of element(s)
jQueryObject.on('click', function(e) {
  e.preventDefault();
  // Filter
});

谢谢,@linstantnoodles!对于第一个元素,这是有效的。但是如果我想对页面上类的所有元素都有相同的行为?我尝试从JSFIDLE中删除[0],但它不起作用。也可以重复我猜的数组,但可能是一个更简单的解决方案?抱歉,我是一个初学者:)最后我使用For循环:-这是一种有效的方法吗?您可以利用事件委托(或jQuery()。否则,我认为您必须使用For循环,因为DOM api不提供将侦听器附加到元素列表的方法。