指针事件:没有在 IE 中不起作用
Posted
技术标签:
【中文标题】指针事件:没有在 IE 中不起作用【英文标题】:pointer-events: none not working in IE 【发布时间】:2016-03-09 07:17:14 【问题描述】:我正在尝试禁用我的 SharePoint 2013 列表编辑页面中的超链接。我使用了一个内容编辑器 webpart 并输入了pointer-events : none
。它在 Google Chrome 上运行良好,但在 IE 中不起作用。有没有其他选择?我只想要 CSS 替代品。我的 IE 是 10 版。
【问题讨论】:
这是一个错字还是你真的在你的 CSS 中输入了pointer-event: none
?该属性是pointer-events
,末尾有一个S
@Bojangles 标题拼写正确,错字已修复
是的,我确实放了指针事件。抱歉这里拼错了
css 'pointer-events' property alternative for IE的可能重复
【参考方案1】:
pointer-events
在 IE 10 中不受支持,并且没有其他类似的 CSS 属性。
需要更改标记或使用脚本来解决这个问题。
更新
这是一个使用脚本的示例。
我还对链接进行了样式设置,因此人们无法将它们视为链接,实际上可以单独使用,基于是否有人随机单击文本并意外点击了一个,它仍然可以。
Array.prototype.slice.call(document.querySelectorAll("a")).forEach(function(link)
link.addEventListener("click", function(e)
e.preventDefault();
);
);
a
cursor: text;
text-decoration: none;
color: inherit;
Some text with <a href="http://***.com"> a link </a> to click on
更新 2
这里实际上有 2 篇文章,其中有几种方法可以做到这一点(虽然都是脚本,但只有一个),
css 'pointer-events' property alternative for IE How to make Internet Explorer emulate pointer-events:none?this answer 不使用脚本。
根据评论更新 3
要使用属性disabled='disabled'
,需要在服务器端添加它,使锚看起来像这样,<a href="link" disabled="disabled">Link</a>
,或者使用这样的脚本在客户端添加
Array.prototype.slice.call(document.querySelectorAll("a")).forEach(function(link)
link.setAttribute('disabled', 'disabled');
);
/*
a
cursor: text;
text-decoration: none;
color: inherit;
*/
Some text with <a href="http://***.com"> a link </a> to click on
【讨论】:
你知道这个@LGSon 的任何脚本 @Revenant_01 用示例更新了我的答案 @Revenant_01 再次做了一个小更新......现在你可以接受和投票:) 我尝试在我的内容编辑器 webpart 中使用该脚本,但它不起作用 @Revenant_01 确保脚本在你的 body 末尾或 onload/dom 就绪事件中运行。以上是关于指针事件:没有在 IE 中不起作用的主要内容,如果未能解决你的问题,请参考以下文章
TextTrackList onchange 事件在 IE 和 Edge 中不起作用
单选按钮更改事件在 chrome 或 safari 中不起作用