收藏
回答

仿建行圆形菜单绑定点击事件,获取不到对应菜单内容

问题模块 框架类型 问题类型 API/组件名称 终端类型 微信版本 基础库版本
API和组件 小游戏 Bug view 工具 2.6.3.78 1.02.1808100

 最近学习仿建行圆形菜单,在绑定菜单的点击事件上遇到了问题。本身圆形菜单是通过xw:for获取数组中的内容生成的,然后通过

style="-webkit-transform: rotate({{item.deg}}deg)

对view进行旋转,形成了圆形菜单,但是通过

<view class="menu-item" wx:for="{{menuList}}" wx:key="{{item.index}}"  animation="{{animationData}}"  bindtap='selectMenu' data-index="{{index}}">

绑定点击事件后,不管点击了哪个菜单,后台获取到的总是数组中的最后一个元素内容。


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

5 个回答

  • 卢霄霄
    卢霄霄
    2018-08-14

    在你现在的view里再写一层,然后bindtap到里面这一层

    2018-08-14
    赞同
    回复
  • Phoenix
    Phoenix
    2018-08-14

    <view class="menu-item" wx:for="{{menuList}}" wx:key="{{item.index}}"  animation="{{animationData}}">

          <view bindtap='selectMenu' data-index="{{index}}:{{item.menu}}">

          <view class="menu-circle-item" style="-webkit-transform: rotate({{item.deg}}deg);" data-menu="{{item.menu}}">

            <image class="image-style" src="{{item.src}}"></image>

          </view>

          <view class="menu-circle-text-item" style="-webkit-transform: rotate({{item.deg}}deg);">

            <text class="text-style">{{item.menu}}</text>

          </view>

        </view>

    你是说在menu-item里面再加一层view,然后把点击事件绑定到新加的这一个view上?

    刚才试了一下,没有效果。

    2018-08-14
    赞同
    回复 3
    • 卢霄霄
      卢霄霄
      2018-08-14

      你这样回复。。我收不到通知。,。。看这代码不知道最后什么样,方便做个代码片段吗?

      https://developers.weixin.qq.com/miniprogram/dev/devtools/minicode.html

      2018-08-14
      赞同
      回复
    • 卢霄霄
      卢霄霄
      2018-08-14

      这样说吧。你看看你散出去的按钮们,是到哪一层才是分离开的,而不是在最开始的位置,就把bindtap写到这一层上

      2018-08-14
      赞同
      回复
    • Phoenix
      Phoenix
      2018-08-15

      <view class="menu-item" catchtouchend="selectMenu" data-name="{{item.menu}}" wx:for="{{menuList}}" wx:key="unique"  animation="{{animationData}}">

      <view  class="menu-circle-item" style="-webkit-transform: rotate({{item.deg}}deg);" data-menu="{{item.menu}}"  >

      <image class="image-style" src="{{item.src}}"></image>

      </view>

      <view class="menu-circle-text-item" style="-webkit-transform: rotate({{item.deg}}deg);">

      <text class="text-style">{{item.menu}}</text>

      </view>

      </view>

      今天早上来试了试这种方式,成功!

      2018-08-15
      赞同
      回复