收藏
回答

由一个flex父组件包裹的image组件,不响应点击事件,为什么呢?

wxml:

<view class="func-button" bind:tap="navToGood" data-id="1181000">
  <!-- <view> 桶装水 </view> -->
  <view> 桶装水 </view>
  <image src="/images/桶装水.svg" />
</view>
<view class="func-button">
  <image src="/images/桶装水.svg" />
  <view> 桶装水 </view>
</view>
<view class="func-button">
  <image src="/images/桶装水.svg" />
  <view> 桶装水 </view>
</view>


wxcc:

.func-button {
  padding10rpx;
  background-color: white;
  height160rpx;
  width170rpx;
  /* font-size: 12px; */
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: space-around;
  border-radius10px !important;
  /* box-shadow: -1px 4px 0px #f0f0f0; */
  /* text-align: center; */
}

页面上,点击文字区域是可以响应点击事件的,可是点击图片区域就没有反应,这是为啥呢?

解决了,

用image组件但是不显式得定义长度和宽度的话,虽然在flex父组件中,但是image组件还是会自说自话得定义一个超出父组件区域的box,虽然图片还是按需要的位置和大小显示。

这导致,我第一个button被第二个button挡住了。

解决:给image组件定义和父组件一样的高度和宽度

.func-button image {
  height160rpx;
  width170rpx;
}


我感觉这是image组件的bug,使用view组件不会有这种问题

最后一次编辑于  2小时前
回答关注问题邀请回答
收藏

3 个回答

  • 那一抹笑😃 穿透阳光
    那一抹笑😃 穿透阳光
    2小时前

    提供一个能复现的代码片段 https://developers.weixin.qq.com/miniprogram/dev/devtools/minicode.html

    2小时前
    有用
    回复
  • 小黎
    小黎
    3小时前

    提供一下完整的代码,事件是怎么绑定

    3小时前
    有用
    回复 1
    • 神经蛙
      神经蛙
      2小时前
      解决了,是image的box超出导致overlapp的问题。谢谢你
      2小时前
      回复
  • 一笑皆春
    一笑皆春
    3小时前

    点击事件呢咋写的

    3小时前
    有用
    回复 1
    • 神经蛙
      神经蛙
      3小时前
      就一个打印。和点击事件内容没啥关系,因为根本不触发
      3小时前
      回复
登录 后发表内容