网页在IOS端执行动态元素绑定事件失效的解决方案
设备终端 : IOS端。
事件描述 : jQuery中 append()
、 click()
等函数/事件在<table>标签中失效。
事件过程 : 前端接收ajax的返回值,接收到内容后动态在<table>中append()表格内容DOM(<tbody><tr><td>等),内容接收成功,但无法成功append()。
补充说明 : 在电脑,Android端不会有这个问题,只有IOS端出现问题。
原因 : 在IOS中,给一个元素添加事件时(将这个元素称为事件元素),如果代理元素是body或者document,并且事件元素默认是不可点击的时候,事件就会失效,如果事件元素是<button>等可以点击的元素,就不会失效。
解决方案 : 在事件元素或其父级组件元素的CSS中添加
cursor:pointer
即可。