IE 浏览器 button的 click 不生效(兼容问题) 原因分析

遇到的问题:

我给button绑定了事件,传递了$event ,并在JS中使用,在谷歌、火狐都可正常使用,但是当处于IE浏览器时,button绑定的事件就不会被触发。代码如下:

<Button
  type="primary"
  size="small"
  @click="onAcceptance($event)"
  style="margin-left: 20px"
  >受理</Button
>

onAcceptance(e) {
  this.xzButton = e.target.innerText;
},

原因分析:

经过查询了解,发现IE浏览器不能使用event对象,所以将需要在JS中使用的内容直接下传即可。

解决代码:

<Button
  type="primary"
  size="small"
  @click="onAcceptance('受理')"
  style="margin-left: 20px"
  >受理</Button
>

onAcceptance(type) {
  this.xzButton = type;
},

### 解决 CSS `hover` 效果不显示隐藏内容 当遇到 CSS `hover` 效果无法正常工作的情况时,通常是因为某些特定条件未被满足或存在冲突的选择器优先级问题。以下是几种常见原因及其对应的解决方案: #### 1. 使用合适的可见性控制属性 对于希望在悬停状态下显示的内容,默认情况下应将其初始状态设为不可见。推荐使用 `visibility:hidden;` 而不是 `display:none;` 来处理这种情况[^1]。 ```css .hidden-content { visibility: hidden; } .parent-element:hover .hidden-content, .isActive .hidden-content { /* 额外的状态 */ visibility: visible; } ``` 这种方式不仅能够确保元素保持布局空间(不会引起页面跳动),而且兼容性更好,尤其适用于旧版浏览器IE7 和 IE8。 #### 2. 确保选择器具有足够的权重 如果发现 `.parent:hover .child {}` 这样的规则未能生效,则可能是由于其他更高优先级的样式覆盖了它。可以通过增加 ID 或者嵌套更多父级标签来提升当前样式的特异性[^2]。 ```css /* 更具体的选择器路径 */ #specific-parent:hover > div.child {} ``` #### 3. 添加交互事件辅助 有时仅依赖于伪类可能不足以维持预期的行为,特别是在复杂场景下。此时可以在 JavaScript 中监听用户的点击操作,在适当时候手动触发所需的视觉变化[^4]。 ```javascript document.querySelector('.toggle-button').addEventListener('click', function() { document.body.classList.toggle('isActive'); }); ``` 通过以上方法之一或多者的组合应用,应当能有效解决大多数因 `hover` 导致的内容显示异常问题。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值