javascript/jquery中的轨迹板点击事件
有什么方法可以处理mac的轨迹板上的点击 我需要在轨迹板上处理“点击”和“点击”,尤其是在mac上 我试过了javascript/jquery中的轨迹板点击事件,javascript,jquery,macos,trackpad,Javascript,Jquery,Macos,Trackpad,有什么方法可以处理mac的轨迹板上的点击 我需要在轨迹板上处理“点击”和“点击”,尤其是在mac上 我试过了 $.event.special.tap = { setup: function(data, namespaces) { var $elem = $(this); $elem.bind('touchstart', $.event.special.tap.handler) .bind('touchmove', $.event.
$.event.special.tap = {
setup: function(data, namespaces) {
var $elem = $(this);
$elem.bind('touchstart', $.event.special.tap.handler)
.bind('touchmove', $.event.special.tap.handler)
.bind('touchend', $.event.special.tap.handler);
},
teardown: function(namespaces) {
var $elem = $(this);
$elem.unbind('touchstart', $.event.special.tap.handler)
.unbind('touchmove', $.event.special.tap.handler)
.unbind('touchend', $.event.special.tap.handler);
},
handler: function(event) {
event.preventDefault();
var $elem = $(this);
$elem.data(event.type, 1);
if (event.type === 'touchend' && !$elem.data('touchmove')) {
event.type = 'tap';
$.event.handle.apply(this, arguments);
} else if ($elem.data('touchend')) {
$elem.removeData('touchstart touchmove touchend');
}
}
};
$('.thumb img').bind('tap', function() {
//bind tap event to an img tag with the class thumb
}
这没用
如何在轨迹板上捕捉点击事件?我也有同样的顾虑。例如,MacBook上的触摸板似乎不像实际的触摸设备那样触发触摸事件。相反,它将手势转换为鼠标事件
document.addEventListener('mousewheel', function(e) {
console.log(e.wheelDelta);
});
document.addEventListener('touchstart', function(e) {
console.log(e);
});
在上面的例子中,当我试图在触摸板上捕捉“收缩/缩放”手势时,我实际上是从一个滚轮中获取增量,就像我按住CTRL键然后向上或向下滚动一样,返回的wheelDelta值为120或-120。为“touchstart”设置事件侦听器不会像我规定的那样写入控制台,除非它位于触摸设备(如平板电脑或智能手机)上
显然,MackBook可以检测到您何时触摸了触控板,因为它可以检测到您的移动,但它似乎无法通过文档获得