为了账号安全,请及时绑定邮箱和手机立即绑定

CSS‘指针-IE的事件“属性可供选择

CSS‘指针-IE的事件“属性可供选择

湖上湖 2019-06-19 11:20:31
CSS‘指针-IE的事件“属性可供选择我有一个下拉导航菜单,其中一些标题在单击时不应该导航到其他页面(这些标题在单击时打开下拉菜单),而另一些则应该导航(这些页面没有下拉菜单并直接导航)。href给他们下定义为了解决这个问题,我为前一种标题添加了以下CSSpointer-events: none;由于这个属性不受IE的支持,所以我想找一些改进的地方。最烦人的是我没有权限和权限来更改HTML和JavaScript代码完全地。有什么想法吗?
查看完整描述

3 回答

?
侃侃尔雅

TA贡献1801条经验 获得超16个赞

指针-事件是一个Mozilla黑客,它已经在Webkit浏览器中实现了,你不能指望它在IE浏览器中再出现一百万年。

不过,我找到了一个解决办法:

通过层转发鼠标事件

这使用一个插件,它使用Javascript的一些不为人所知的/理解的属性来获取鼠标事件并将其发送到另一个元素。

还有另一个Javascript解决方案这里.

很明显,它将在第11节进入IE。来源..谢谢蒂姆。


查看完整回答
反对 回复 2019-06-19
?
心有法竹

TA贡献1866条经验 获得超5个赞

值得一提的是,对于IE来说,disabled=disabled为锚标签工作:

<a href="contact.html" onclick="unleashTheDragon();" disabled="disabled">Contact</a>

把这当作disabled元素,并且不触发单击事件。然而,disabled不是锚标记上的有效属性。因此,这在其他浏览器中是行不通的。对他们来说pointer-events:none在造型设计中是必需的。

更新1:因此,添加以下规则对我来说就像是一个跨浏览器的解决方案。

更新2*为了进一步的兼容性,因为IE不会为带有disabled='disabled',所以他们仍然活动。因此,a:hover{}规则和样式是一个好主意:

a[disabled="disabled"] {
        pointer-events: none; /* this is enough for non-IE browsers */
        color: darkgrey;      /* IE */
    }
        /* IE - disable hover effects */   
        a[disabled="disabled"]:hover {
            cursor:default;
            color: darkgrey;
            text-decoration:none;
        }

开发Chrome、IE11和IE8。
当然,上面的css假设锚标记是用disabled="disabled"


查看完整回答
反对 回复 2019-06-19
  • 3 回答
  • 0 关注
  • 345 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信