前端日常踩坑(1) -- .click() 和 $(document).on('click','selector ',function(){})

今天在配合后端修改前端动态效果的时候,发现selector.click()不起作用,调试许久未发现问题,后来才发现事件的元素是动态生成的新的元素.而非静态页面现有的元素.

  • 两种事件方法的区别.

selector.click() ------- 适用页面现有元素绑定的点击时间.如果是动态生成的新的元素,是没有事件的.

$(document).on('click','selector',function(){}) ------- 适用于动态生成新元素的情况,将事件委托在document上;如果新产生的元素符合selector,则触发此事件.

  • 但是又有一个新的问题---$(document).on('click','selector',function(){})在安卓上和电脑浏览器上都能触发,但是在ios上无效!

解决方法也很简单.

  1. 在需要绑定事件的元素上添加一句 css ------ selector {cursor:pointer};
  1. 将click换成 touchstart ;
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 通过jQuery,您可以选取(查询,query)HTML元素,并对它们执行“操作”(actions)。 jQuer...
    枇杷树8824阅读 3,885评论 0 3
  • 请参看我github中的wiki,不定期更新。https://github.com/ivonzhang/Front...
    zhangivon阅读 12,149评论 2 19
  • 结束了一天的简单的忙碌,洗漱完,躺在床上,有了一段静谧,属于自己的时光,可以拿起喜欢的书,看着令人欣慰的文字,感受...
    木贝阅读 1,059评论 0 0
  • 在《亲密关系也需要沟通技巧》一文中,我了解到亲密关系的维持需要承诺。而且除此之外,还需要积极性,开放性,保证,社交...
    凌喜悦阅读 3,122评论 2 0