0

假设我有以下标记

<ul class="app-nav">
  <li><a href="#!/testing">Link to testing route</a>
</ul>
...
<a href="#!/testing">Other link to testing route</a>

使用 jQuery

$('a').click(function() {
   console.log( $(this) ); //the event sender and can be 'a' or 'ul>li>a'
});

使用 sammy.js

this.get('#!/testing', function(context) {
  //how I can get the event sender?
});
4

2 回答 2

0

使用 jQuery 将您的请求绑定到文档并检查目标属性:

$(document).on('click', function( e ){

    var sender = e.target; // <-- Your event initiator

});
于 2013-01-09T13:46:07.227 回答
0

根据文档,事件上下文似乎就是您要寻找的。

这个.target

包含此上下文的事件源自的 DOM 元素。对于 post、put 和 del 路由,这是触发路由的表单元素。

所以对于一个 post 请求,你可以从提交的表单中获取序列化的对象。

this.post('#:id', function() {
  // this.target is the DOM form element that triggered the route
  console.log($(this.target).serialize());
});
于 2013-10-24T09:02:04.523 回答