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

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

我有一个下拉导航菜单,其中一些标题在单击时不应该导航到其他页面(这些标题在单击时打开下拉菜单),而另一些则应该导航(这些页面没有下拉菜单并直接导航)。href给他们下定义

为了解决这个问题,我为前一种标题添加了以下CSS

pointer-events: none;

由于这个属性不受IE的支持,所以我想找一些改进的地方。最烦人的是我没有权限和权限来更改HTML和JavaScript代码完全地。

有什么想法吗?


湖上湖
浏览 346回答 3
3回答

侃侃尔雅

指针-事件是一个Mozilla黑客,它已经在Webkit浏览器中实现了,你不能指望它在IE浏览器中再出现一百万年。不过,我找到了一个解决办法:通过层转发鼠标事件这使用一个插件,它使用Javascript的一些不为人所知的/理解的属性来获取鼠标事件并将其发送到另一个元素。还有另一个Javascript解决方案这里.很明显,它将在第11节进入IE。来源..谢谢蒂姆。

心有法竹

值得一提的是,对于IE来说,disabled=disabled为锚标签工作:<a&nbsp;href="contact.html"&nbsp;onclick="unleashTheDragon();"&nbsp;disabled="disabled">Contact</a>把这当作disabled元素,并且不触发单击事件。然而,disabled不是锚标记上的有效属性。因此,这在其他浏览器中是行不通的。对他们来说pointer-events:none在造型设计中是必需的。更新1:因此,添加以下规则对我来说就像是一个跨浏览器的解决方案。更新2*为了进一步的兼容性,因为IE不会为带有disabled='disabled',所以他们仍然看活动。因此,a:hover{}规则和样式是一个好主意:a[disabled="disabled"]&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;pointer-events:&nbsp;none;&nbsp;/*&nbsp;this&nbsp;is&nbsp;enough&nbsp;for&nbsp;non-IE&nbsp;browsers&nbsp;*/ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;color:&nbsp;darkgrey;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;/*&nbsp;IE&nbsp;*/ &nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;/*&nbsp;IE&nbsp;-&nbsp;disable&nbsp;hover&nbsp;effects&nbsp;*/&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;a[disabled="disabled"]:hover&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;cursor:default; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;color:&nbsp;darkgrey; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;text-decoration:none; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}开发Chrome、IE11和IE8。当然,上面的css假设锚标记是用disabled="disabled"
打开App,查看更多内容
随时随地看视频慕课网APP