Javascript AngularJS-在移动设备指令中使用ngTouch
我正在使用Javascript AngularJS-在移动设备指令中使用ngTouch,javascript,angularjs,angular-touch,Javascript,Angularjs,Angular Touch,我正在使用ngTouch删除移动设备上的延迟,但在移动设备上单击图像不会产生任何效果。在我的应用程序中,单击图像会调用一个指令来放大图像,因此没有ng click。以下是指令: app.directive('imageZoom', ['ngDialog', function(ngDialog) { return { restrict: 'A', scope: { image: '=' }, link:
ngTouch
删除移动设备上的延迟,但在移动设备上单击图像不会产生任何效果。在我的应用程序中,单击图像会调用一个指令来放大图像,因此没有ng click
。以下是指令:
app.directive('imageZoom', ['ngDialog', function(ngDialog) {
return {
restrict: 'A',
scope: {
image: '='
},
link: function(scope, element, attr) {
attr.$observe('ngSrc',function(img) {
element.bind('click', function(e) {
e.stopPropagation();
if (something) {
doSomething();
} else {
ngDialog.open({
some template here
});
}
});
});
}
};
}]);
在我引入
ngTouch
之前,它一直运行良好,因此我认为元素.bind('click'
方面没有注册click。它在浏览器上运行得非常好,尽管该指令确实有效。侦听元素.bind('touchtstart click',function(){…}
而不是只单击element.bind('click',function(){…}
我添加了这个,它可以工作,但是如果我尝试从图片开始向下滚动页面,它也会将其注册为单击并放大图片。它应该只将单击注册为单击图像,而不是从图像开始的滑动。你有什么想法吗?