【发布时间】:2019-10-25 21:31:18
【问题描述】:
如果浏览器支持 css 通用兄弟选择器~,我如何使用 Javascript (jQuery) 进行测试?
例子:
#toggled:checked ~ #sidebar {
display: block;
}
该 CSS 代码在 IE 8-、Firefox 3-、Safari 3.1- 中不起作用,因此在这些情况下,我需要应用 Javascript 替代方案来显示 #sidebar 块。
【问题讨论】:
-
使用 JavaScript 看看是否可见?
-
更笼统地说,stackoverflow.com/questions/21094865/… 可能,但如果你走得那么远,你可能不得不为那个答案中的方法填充
querySelector,我不确定 @987654326 是否@ (Javascript) 将始终与浏览器的 CSS 选择器实现匹配 -
通用兄弟选择器声明它支持 IE7、safari 3 和 firefox 1。所以我认为在这种情况下,它是 :checked 选择器在 IE8 中不起作用,因为它应该是 IE9+ .所以也许您可以将其更改为
#toggled.checked ~ #sidebar,然后在单击时使用JS 从切换元素中添加/删除.checked类。乍一看应该是 IE8 兼容的。
标签: javascript jquery css-selectors cross-browser