如果我有像这样创建表的AngularJS HTML:
<tbody>
<tr data-ng-repeat="row in grid.data">
<td>{{ row.id }}</td>
<td>{{ row.text }}</td>
</tr>
</tbody>
我如何添加功能,以便只需点击一行就会突出显示该行,两次点击会调用row.id
的功能?是否有AngularJS
方法可以执行此操作,还是必须使用jQuery
?我怀疑这样做的唯一方法是使用jQuery
,但我觉得我应该先问AngularJS
个问题。
由于
答案 0 :(得分:4)
我在Jquery的网站上找到了以下内容:
<强>“强> 将处理程序绑定到同一元素的click和dblclick事件是不可取的。触发的事件序列因浏览器而异,有些事件在dblclick之前接收到两个点击事件,而其他事件只接收一个事件。 的“强>
最好能找到另一种方法来实现它,例如使用鼠标悬停和点击事件来收集但不点击并双击收集。
答案 1 :(得分:3)
最好的方法可能是首先去那里:
Handling ng-click and ng-dblclick on the same element with AngularJS
为了处理单击和双击问题。 看这里:http://plnkr.co/edit/on260PrRZ5mZqHOK6NXW?p=preview
答案 2 :(得分:2)
Angular本身有一个内置的[ng-click][1]
指令。
我会考虑使用它。但是,我猜你必须自己构建双击功能。
这应该很简单,可以与ng-click触发功能结合使用。只需等待x秒即可确定用户是否已完成2次点击。
编辑:Mea culpa,我不知道ngdblclick