收藏
回答

关于视频播放和事件捕获的问题

问题模块 框架类型 问题类型 API/组件名称 终端类型 微信版本 基础库版本
API和组件 小程序 需求 video 客户端 6.7.0 2.4.0


当我点击播放按钮时,我希望实现的是只播放不跳转,但实际上当我点击播放按钮时又播放又跳转。我开始以为是事件冒泡,所以一开始想的解决办法就是点击播放按钮时,加一个状态判断是点击了播放按钮的,当到外层view的跳转事件时就根据这个状态来判断要不要跳转,但是我实施了之后发现,这是一个事件捕获,就是先触发了跳转的事件,再触发播放事件,这样一来我一开始想的解决办法就没办法实现了,目前也没想到什么办法能解决。所以想问一下有什么办法能实现我的需求。




求官方人员和各位大神们给点意见,跪谢!orz

最后一次编辑于  2018-11-27  (未经腾讯允许,不得转载)
回答关注问题邀请回答
收藏

3 个回答

  • Albert Einstein [官]
    Albert Einstein [官]
    2018-11-27

    bindtap 里判断一下 event.target / currentTarget 呢?看看是点击的哪个 target

    2018-11-27
    赞同
    回复 1
    • 七芋圆全
      七芋圆全
      2018-11-27


      分别打印了是这样的

      2018-11-27
      回复
  • 魔力克
    魔力克
    2018-11-27

    <view class="container">

    <view capture-bindtap='toContent'>

    <video src='https://video.pc6.com/v/1809/dyjxxz3.mp4' bindplay='playVideo'></video>

    </view>

    </view>



    2018-11-27
    赞同
    回复
  • 夜枭
    夜枭
    2018-11-27

    对啊,你这个其实就是冒泡的问题,bindPlay=‘playVideo’改成catchplay就行了

    2018-11-27
    赞同
    回复 2
    • 七芋圆全
      七芋圆全
      2018-11-27

      你看一下我最后一张图的打印结果, 是先输出了外层的222再输出里面的111 说明这是事件捕获啊

      2018-11-27
      回复
    • 夜枭
      夜枭
      2018-11-27回复七芋圆全

      那你就在禁止捕获。capture-bindtap="toDetail"

      2018-11-27
      回复