javascript - 如何在移动设备上模拟 .click()
问题描述
我需要单击一个 div 来执行操作。我成功地做了桌面版,但是当我去移动时,点击操作不起作用。我尝试了在 Stack Overflow 和其他网站中找到的几种方法,但任何方法都有效......
我的桌面代码:
document.getElementById('BtMisDocumentos').click();
我的移动代码(3 次尝试);
$('BtMisDocumentos').trigger('vclick');
$('BtMisDocumentos').trigger('tap');
$('BtMisDocumentos').trigger('touchstart');
分区;
<div id="BtMisDocumentos" class="dx-button dx-button-normal dx-button-mode-text dx-widget dx-button-has-text" onclick="void(0)" role="button" aria-label="Mis Documentos" style="width: 140px;"><div class="dx-button-content"><span class="dx-button-text">Mis Documentos</span></div></div>
任何想法?也许不起作用,因为我使用的是用户代理,尽管是“真正的”手机?
解决方案
我认为您缺少一些东西:
//Use a . for a element class and # for a element id. Use it in the $('#...') part.
$('.BtMisDocumentos').trigger('vclick');
$('#BtMisDocumentos').trigger('tap');
$('.BtMisDocumentos').trigger('touchstart');
也可以用 .click() 试试这个。
jQuery 文档: https ://api.jquery.com/click/
编辑@TWISTY:
如果您只想复制和粘贴:
//With a HTML class attribute. Example: <div class="BtMisDocumentos"></div>
$('.BtMisDocumentos').trigger('vclick');
$('.BtMisDocumentos').trigger('tap');
$('.BtMisDocumentos').trigger('touchstart');
$('.BtMisDocumentos').click();
//With a HTML id attribute. Example: <div id="BtMisDocumentos"></div>
$('#BtMisDocumentos').trigger('vclick');
$('#BtMisDocumentos').trigger('tap');
$('#BtMisDocumentos').trigger('touchstart');
$('#BtMisDocumentos').click();
推荐阅读
- batch-rename - 从文件夹中批量删除字符
- sql - 用列表中的新值随机替换表中的现有值。
- python - Python 装饰器,增加了与 Python2 和 Python3 的关键字参数兼容性
- haskell - 如何使线像圆一样粗?
- grep - 将自定义消息和 grep 一起传送到 mutt
- redirect - NGINX/Openshift - 定位块重定向到错误的端口
- python - Python中的Toda-Yamamoto Granger因果关系检验
- algorithm - 检查两个列表的最佳算法技术
- sql - 我如何拉取或显示一个二级经理姓名而不是两个二级经理
- ansible - 在查找内部查找 - ansible