jquery - 仅根据屏幕尺寸删除类

标签 jquery html css twitter-bootstrap

我想在屏幕小于 1339 像素时从 div 中删除 .btn-group,这样布局就不会在较小的屏幕上受到影响。我正在使用 Bootstrap v3。

我喜欢只使用 <1339px 的导航栏的布局感觉,所以我想删除那些视口(viewport)中的拆分按钮。但是我想保留它们 >1340。我希望它看起来像 https://youtu.be/qpWlaOeGZ_4?t=10m38s .

我不太确定从哪里开始或如何开始。我看过其他线程的几个答案,但它们似乎不起作用。

<header class="page-header">
    <div class="navbar navbar-default">
        <div class="container">
            <div class="navbar-header">
                <a class="navbar-brand" href="index.php">Mommy Info</a>
                <button class="navbar-toggle" data-toggle="collapse" data-target=".navHeaderCollapse">
                    <span class="sr-only">Toggle Navigation</span>
                    <span class="icon-bar"></span>
                    <span class="icon-bar"></span>
                    <span class="icon-bar"></span>
                </button>
            </div>
            <div class="collapse navbar-collapse navHeaderCollapse">
                <ul class="nav navbar-nav navbar-right">
                    <li class="active">
                        <div class="btn-group">
                            <a class="btn navbar-btn">Home</a>
                            <a data-toggle="dropdown" class="btn navbar-btn dropdown-toggle">
                                <span class="caret"></span>
                            </a>
                            <ul class="dropdown-menu">
                                <li class="splash"> <a href="#">Home</a></li>
                                <li><a href="#">B</a></li>
                                <li><a href="#">About</a></li>
                                <li><a href="#">Contact</a></li>
                            </ul>
                        </div>
                    </li> <!--home-->
                    <li>
                        <div class="btn-group">
                            <a class="btn navbar-btn">Preg</a>
                            <a data-toggle="dropdown" class="btn navbar-btn dropdown-toggle">
                                <span class="caret"></span>
                            </a>
                            <ul class="dropdown-menu">
                                <li class="splash"> <a href="#">Preg</a></li>
                                <li><a href="#">ttc</a></li>
                                <li><a href="#">fd</a></li>
                                <li><a href="#">gp</a></li>
                                <li><a href="#">lad</a></li>
                            </ul>
                        </div>
                    </li> <!--preg-->
                    <li>
                        <div class="btn-group">
                            <a class="btn navbar-btn">aab</a>
                            <a data-toggle="dropdown" class="btn navbar-btn dropdown-toggle">
                                <span class="caret"></span>
                            </a>
                            <ul class="dropdown-menu">
                                <li><a href="#">advice</a></li>
                                <li><a href="#">guidelines</a></li>
                                <li><a href="#">milestones</a></li>
                                <li><a href="#">ld</a></li>
                            </ul>
                        </div>
                    </li> <!--aab-->
                    <li>
                        <div class="btn-group">
                            <a class="btn navbar-btn">han</a>
                            <a data-toggle="dropdown" class="btn navbar-btn dropdown-toggle">
                                <span class="caret"></span>
                            </a>
                            <ul class="dropdown-menu">
                                <li><a href="#">B</a></li>
                                <li><a href="#">About</a></li>
                                <li><a href="#">Contact</a></li>
                            </ul>
                        </div>
                    </li><!--han -->
                    <li>
                        <div class="btn-group">
                            <a class="btn navbar-btn">MM</a>
                            <a data-toggle="dropdown" class="btn navbar-btn dropdown-toggle">
                                <span class="caret"></span>
                            </a>
                            <ul class="dropdown-menu">
                                <li><a href="#">B</a></li>
                                <li><a href="#">About</a></li>
                                <li><a href="#">Contact</a></li>
                            </ul>
                        </div>
                    </li> <!-- pm-->
                    <li>
                        <div class="btn-group">
                            <a class="btn navbar-btn">MM</a>
                            <a data-toggle="dropdown" class="btn navbar-btn dropdown-toggle">
                                <span class="caret"></span>
                            </a>
                            <ul class="dropdown-menu">
                                <li><a href="#">B</a></li>
                                <li><a href="#">About</a></li>
                                <li><a href="#">Contact</a></li>
                            </ul>
                        </div>
                    </li> <!-- mm-->
                    <li>
                        <div class="btn-group">
                            <a class="btn navbar-btn">S</a>
                            <a data-toggle="dropdown" class="btn navbar-btn dropdown-toggle">
                                <span class="caret"></span>
                            </a>
                            <ul class="dropdown-menu">
                                <li><a href="#">HB</a></li>
                                <li><a href="#">DB</a></li>
                                <li><a href="#">CS</a></li>
                                <li><a href="#">BG</a></li>
                            </ul>
                        </div>
                    </li> <!--s-->
                    <li>
                        <div class="btn-group">
                            <a class="btn navbar-btn">R</a>
                            <a data-toggle="dropdown" class="btn navbar-btn dropdown-toggle">
                                <span class="caret"></span>
                            </a>
                            <ul class="dropdown-menu">
                                <li><a href="#">RGames</a></li>
                                <li><a href="#">Rgear</a></li>
                                <li><a href="#">Rlearn</a></li>
                            </ul>
                        </div>
                    </li> <!--r-->
                    <li>
                        <div class="btn-group">
                    <a href="#" class="btn navbar-btn">B</a>
                        </div>
                    </li> <!--b -->
                </ul>
            </div>
        </div>
    </div>
</header>

https://jsfiddle.net/ethacker/L9dzjxpg/

回答:

$(document).ready(function(){
    if(window.innerWidth < 1340){
        $('.btn-group').addClass('backup-btn-group').removeClass('btn-group');
        $('.btn').addClass('backup-btn').removeClass('btn');
        $('.mybtn').addClass('dropdown-toggle').attr("data-toggle", "dropdown");
        $('.myanchor').addClass('anchor');
    }
});

$(window).resize(function(){
    if(window.innerWidth < 1340){
        $('.btn-group').addClass('backup-btn-group').removeClass('btn-group');
        $('.btn').addClass('backup-btn').removeClass('btn');
        $('.mybtn').addClass('dropdown-toggle').attr("data-toggle", "dropdown");
        $('.myanchor').addClass('anchor');
    }else{
        $('.backup-btn-group').addClass('btn-group').removeClass('backup-btn-group');
        $('.backup-btn').addClass('btn').removeClass('backup-btn');
        $('.mybtn').removeClass('dropdown-toggle').removeAttribute("data-toggle");
        $('.myanchor').removeClass('anchor');
    }
});

最佳答案

你可以用 jquery 做到这一点

$(document).ready(function(){
  if(window.innerWidth < 1340){
    $('.btn-group').addClass('backup-btn-group').removeClass('btn-group');
  }
});

$(window).resize(function(){
  if(window.innerWidth < 1340){
    $('.btn-group').addClass('backup-btn-group').removeClass('btn-group');
  }else{
    $('.backup-btn-group').addClass('btn-group').removeClass('backup-btn-group');
  }
});

我让它添加了一个类“backup-btn-group”,所以如果窗口变得大于 1340,它会替换原来的类,但是你可以这样做,将它保存在一个 var 中

关于jquery - 仅根据屏幕尺寸删除类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43666655/

相关文章:

jquery - 使用 HTML5 数据属性作为变量,而不是字符串

html - 具有两种不同字体大小的句子的行位置

css - 在文本旁边添加水平渐变

CSS 术语 : what's this called in a property value?

jquery - 搜索栏不显示 rel 标签

html - golang html模板格式不正确

javascript - 在 div 中翻转动画不隐藏 Canvas 。预期行为是隐藏 Canvas

asp.net-mvc - ASP.NET MVC : Signaling to jQuery that an AJAX request has failed with a custom error message

javascript - 添加嵌套引号

javascript - 如何以字母显示日期 - Javascript --> insidehtml?