H5plus 做APP时,img,a标签长按会发生震动(android) ,怎么禁止其震动?

在用html5+ 在开发APP时,发现img,a标签在长按时都会发生手机震动。
尽管我删除了以下权限: "uses-permission android:name="android.permission.VIBRATE"(手机震动权限),还是会出现长按就会震动的问题。



假如我设置img,a的css:

img,a{
    pointer-events: none;
  }

这样确实长按不会震动的,但是事件触发不了了




有什么办法可以禁止其震动,又能点击触发事件且长按事件也不影响?

如果你使用的是 H5plus 开发的 app,可以通过在 img 或 a 标签中添加 ontouchstart 和 ontouchend 事件来禁止震动。

具体实现方法如下:

在 img 或 a 标签中添加 ontouchstart 事件,并在事件处理函数中调用 plus.device.vibrate 方法。

<img ontouchstart="vibrate()" src="image.png" alt="image">
function vibrate() {
  plus.device.vibrate(0);
}

在 img 或 a 标签中添加 ontouchend 事件,并在事件处理函数中调用 plus.device.cancelVibration 方法。

<img ontouchstart="vibrate()" ontouchend="cancelVibration()" src="image.png" alt="image">
function cancelVibration() {
  plus.device.cancelVibration();
}

这样,在用户长按 img 或 a 标签时,就不会发生震动了。

注意:需要在 app 启动时初始化 H5plus,才能使用 plus.device 对象中的方法。

document.addEventListener('plusready', function() {
  // 初始化 H5plus
});