将'touchstart'事件转换为'mousedown'事件

时间:2015-09-30 07:22:25

标签: javascript jquery html5

我从客户端收到一条要求更改HTML包以支持桌面浏览器的请求。最初,该软件包是为了仅支持ipads而开发的。因此,该软件包的开发充满了'touchstart'事件。现在我想将touchstart转换为mousedowntouchstart mousedown。示例代码供您参考。这在iPad上运行良好。但不是桌面版。

 $('.toggle-button').bind("touchstart",function() {
   alert("toggle button tapped");
 });

我确信查找和替换将花费更多时间而不是有效时间。有没有解决方案或找到和替换是唯一的解决方案。提前谢谢。

1 个答案:

答案 0 :(得分:0)

在touchstart事件中触发mousedown事件。

var elem = document.getElementById('yourdiv');
 $('body').on('touchstart', '[id^="showmenu_"]', function(e){
        e.preventDefault();
       elem.dispatchEvent(new Event('mousedown'))
    });
$(elem).on('mousedown', function () {
    alert('on');
});