xuefine 2021-09-17 15:58 采纳率: 66.7%
浏览 58
已结题

JS中的这串代码是什么意思

$('.pd').on('click','a',function(){
    var _this=$(this)
  })

我换成这样就不能使了
$('.pd a').on('click',function(){
var _this=$(this)
})

  • 写回答

4条回答 默认 最新

  • 雾里桃花 2021-09-17 18:17
    关注

    $('.pd a').on(..) 这种方式是普通的事件绑定,意思是将事件绑定在当前 .pd下 已拥有的a标签上,你的a标签是动态插入的,页面在初始渲染时,a标签并没有被插入到dom里,所以此时 $('.pd a').on(..) 表示绑定了个寂寞 。
    $('.pd').on('click', 'a', function(){...}) 这种的写法叫做 事件委托 ,它的意思是先点击 .pd 标签 ,然后检测 .pd 标签下是否有 a 标签,如果有,就会将事件挨个绑定在 .pd 下 的a标签中

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?

问题事件

  • 系统已结题 9月26日
  • 已采纳回答 9月18日
  • 创建了问题 9月17日