有些需求中,需要一个元素上既有双击事件,也有单击事件,而两者实现的效果不一样。

这时可以使用ng-dblclick与ng-click来实现需求,但是要避免浏览器将双击事件误认为是两次单击事件,从而出现逻辑错误。

可以通过$timeout进行判断,取消第二次单击事件的执行。

<img src="myImage.jpg" ng-click="singleClick()" ng-dblclick="doubleClick()">

In your controller the singleClick function will look like:

$scope.singleClick = function () {
if ($scope.clicked) {
$scope.cancelClick = true;
return;
} $scope.clicked = true; $timeout(function () {
if ($scope.cancelClick) {
$scope.cancelClick = false;
$scope.clicked = false;
return;
} //do something with your single click here //clean up
$scope.cancelClick = false;
$scope.clicked = false;
}, 500);
};
And the doubleClick function will look normal: $scope.doubleClick = function () { $timeout(function () { //do something with your double click here });
};

最新文章

  1. linux输入子系统(input subsystem)之evdev.c事件处理过程
  2. Linux系统实战项目——sudo日志审计
  3. 解决vs2010“创建或打开C++浏览数据库文件 发生错误”的问题 Microsoft SQL Server Compact 3.5
  4. 修饰者模式(装饰者模式,Decoration)
  5. [转] c和python利用setsockopt获得端口重用
  6. popupwindow 模拟新浪、腾讯title弹框效果
  7. UVa437,The Tower of Babylon
  8. RedHat系列软件管理(第二版) --源码包安装
  9. UnicodeDecodeError: &#39;gbk&#39; codec can&#39;t decode byte 0xa7 in position 166: illegal multibyte sequence
  10. 《DSP using MATLAB》Problem 7.14
  11. Numpy数组的保存与读取
  12. Lodop中特殊符号¥打印设计和预览不同
  13. 本地调用QQ只需要一句代码
  14. python-类属性和对象属性(转)
  15. React生命周期执行顺序详解
  16. centos6 pyenv和virtualenv搭建python虚拟环境
  17. cocos2d-x 3.0 场景切换特效汇总(转)
  18. JS 快速获取数据中的最大、最小值
  19. Java: Replace a string from multiple replaced strings to multiple substitutes
  20. JVM内存分配与回收

热门文章

  1. Docker Registry服务启动过程浅析
  2. Bandpass Signals(带通信号,或称窄带信号)
  3. [转载]ARM协处理器CP15寄存器详解
  4. oracle like模糊查询
  5. QQ右下角浮动窗口
  6. 重写类的Equals以及重写Linq下的Distinct方法
  7. LeetCode 374. Guess Number Higher or Lower
  8. 怎样把excel的数据导入到sqlserver2000数据库中
  9. nginx secure_link下载防盗链
  10. sqlite读取中文乱码(C#)