我正在使用bootstrap进行一个项目,到目前为止一切都很好。
在刚刚学习了jquery之后,我正在尽可能地使用远程操作,直到我想要完全使用jquery这个站点。
在考虑这个选项时,我读到了一篇文章,声明网站应该在没有javascript的情况下工作,然后用js增强,这样它们就会优雅地降级。当然可以。
采取这种方法并禁用js来测试我的站点的降级功能后,我发现我的bootstrap下拉菜单不起作用。
如果bootstrap需要js?如果是这样的话,这是否意味着要创建一个可以优雅降级的站点,我需要构建一个引导和非引导版本?
发布于 2015-07-24 08:33:20
我不会去构建网站的两个版本。如果dropdown是您唯一关心的问题,那么我会考虑检测javascript何时启用,并在javascript未运行时实现仅CSS版本的dropdown(使用:hover和/或:active)。
像html5这样的库在检测javascript特性等方面做得很好,但是如果你只想检测javascript是否被启用,那么我能想到的最快的方法就是在你的body或html标签中添加一个类,并简单地将其作为JS初始化的一部分删除。如下所示:
HTML:
<body class="nojs">
<!-- ... HTML content -->
</body>Javascript:
jQuery(document).ready(function($) {
$('body').removeClass('nojs');
});这将允许您编写一些简单的CSS,以便在禁用javascript时触发dropdown可见性。大致是这样的:
CSS:
body.nojs .dropdown:active > li,
body.nojs .dropdown:hover > li {
display: block;
}如果您需要更多关于如何在您的特定站点上使用此标记的说明,我需要查看您现有的一些HTML标记,但希望这足以让您走上正确的道路:)
发布于 2015-07-24 08:18:53
参考this页面,看起来和我一样,你可以为此添加一些自定义的css。
https://stackoverflow.com/questions/31600156
复制相似问题