如何在触摸设备上获取用户点击元素的ID并输出到控制台?
解决触摸事件获取元素ID的问题
问题出在event.targetTouches[0]是原生的Touch对象,并非你点击的DOM元素,直接用它创建jQuery对象自然拿不到id。你需要取Touch对象的target属性,这才是对应的DOM元素,再转成jQuery对象即可。
修正后的代码:
$(document).on('touchstart', function (event) { // 获取触摸对应的DOM元素,再转为jQuery对象 var clickTarget = $(event.targetTouches[0].target); // 输出元素ID console.log(clickTarget.attr('id')); });
也可以直接用原生方式获取id,无需jQuery转换:
$(document).on('touchstart', function (event) { var targetElement = event.targetTouches[0].target; console.log(targetElement.id); });
内容的提问来源于stack exchange,提问作者Earlgray
相关产品推荐
相关产品推荐

