zoukankan      html  css  js  c++  java
  • 快速认识Javascript插件

    导入的链接

        <link rel="stylesheet" href="bootstrap-4.2.1-dist/css/bootstrap.css">
        <link rel="stylesheet" href="font-awesome-4.7.0/css/font-awesome.css">
        <script src="jquery-3.3.1.slim.js"></script>
        <script src="https://cdn.staticfile.org/popper.js/1.14.6/umd/popper.js"></script>
        <script src="bootstrap-4.2.1-dist/js/bootstrap.min.js"></script>
    

    插件分类

    Bootstrap4内置了许多插件,这些插件在Web应用开发中应用频率比较高,下面列出bootstrap插件支持的文件以及各种插件对应的js文件:
     警告框:alert.js。
     按钮:button.js。
     轮播:carousel.js。
     折叠:collapse.js。
     下拉菜单:dropdown.js。
     模态框:modal.js。
     弹窗:popover.js。
     滚动监听:scrollspy.js。
     标签页:tab.js。
     工具提示:tooltip.js。

    2 安装插件

    Bootstrap插件可以单个引入,方法是使用bootstrap提供的单个*.js文件;也可以一次性全部引入,方法是引入bootstrap.js或者boostrap.min.js。
    部分bootstrap插件和CSS组件依赖于其他插件。如果需要单独引入某个插件时,请确保在文档中检查插件之间的依赖关系。
    所有bootstrap插件都依赖于util.js,它必须在插件之前引入。如果要单独使用某一个插件,引用时必须要包含util.js文件。如果使用的是已编译bootstrap.js或者bootstrap.min.js文件,就没有必要再引入该文件了,因为其中已经包含了。
    提示:util.js文件包括实用程序函数、基本事件以及CSS转换模拟器。util.js文件在bootstrap4源文件中可以找到,与其他插件在一个文件夹中。

    3 调用插件

    Bootstrap4提供了两种调用插件的方法,具体说明如下。
    1.Date属性调用
    在页面中目标元素上定义data属性,可以启用插件,不用编写JavaScript脚本。推荐首选这种方式。
    2.JavaScript调用
    Bootstrap插件也可以使用JavaScript脚本进行调用。

    4 事件

    Bootstrap4为大部分插件自定义事件。这些事件包括两种动词形式,不定式和过去式。
     不定式形式:例如show,表示其在事件开始时被触发。
     过去式形式:例如shown,表示在动作完成之后被触发。
    所有不定式事件都提供了preventDefault()功能,这提供了在操作开始之前停止其执行的能力,从事件处理程序返回false也会自动调用preventDefault()。

    $('#myModal').on('show.bs.modal', function (e) {
      if (!data) return e.preventDefault()  //停止显示模态框
    })
    

    按钮

    1. 切换状态

    添加data-toggle="button"属性,可以切换按钮的active状态,如果你预先需要切换按钮,必须将.active样式属性添加到<button>标签中。

    <body class="container">
        <button type="button" class="btn btn-danger " data-toggle="button" autocomplete="off">
            切换状态按钮,预先加入按钮可加入.active类
        </button>
    </body>
    

    也可以JavaScript脚本形式实现切换效果。

    <button type="button" class="btn btn-danger " autocomplete="off">
            切换状态按钮,去掉data-toggle="button" 用JS脚本实现
            是放在按钮上,颜色发生改变
        </button>
        <script>
            $(".btn").click(function(){
                $("this").button("toggle")
            })
        </script>
    

    2 按钮式复选框和单选框

    Bootstrap的.button样式也可以作用于其它元素,例如<label>上,从而模拟单选框、复选框效果。添加data-toggle="buttons"到.btn-group下的元素里,可以启用样式切换效果。预先选中的按钮需要手动将.active添加到<label>上。

    1.按钮式复选框

    按钮组 class="btn-group";单击切换时变换深浅色 data-toggle="buttons"

    <div class="btn-group" data-toggle="buttons">
        <label class="btn btn-primary active">
            <input type="checkbox" checked autocomplete="off">复选框 1
        </label>
        <!--label 元素不会向用户呈现任何特殊效果。
            不过,它为鼠标用户改进了可用性。如果您在 label 
            元素内点击文本,就会触发此控件。就是说,当用户选择该标签时,
            浏览器就会自动将焦点转到和标签相关的表单控件上。-->
        <label class="btn btn-primary">
            <input type="checkbox" autocomplete="off"> 复选框 2
        </label>
        <label class="btn btn-primary">
            <input type="checkbox" autocomplete="off"> 复选框 3
        </label>
    </div>
    

    btn-group-toggle类实现类似按钮组的效果

    <div class="btn-group btn-group-toggle" data-toggle="buttons">
        <!--btn-group-toggle类实现类似按钮组的效果-->
        <label class="btn btn-primary active">
            <input type="checkbox" checked autocomplete="off"> 复选框 1
        </label>
        <label class="btn btn-primary">
            <input type="checkbox" autocomplete="off"> 复选框 2
        </label>
        <label class="btn btn-primary">
            <input type="checkbox" autocomplete="off"> 复选框 3
        </label>
    </div>
    

    2.按钮式单选框

    单选框定义type="radio" name="options"

    <div class="btn-group" data-toggle="buttons">
        <label class="btn btn-primary active">
            <input type="radio" name="options" id="option1" autocomplete="off" checked> 单选框 1
        </label>
        <label class="btn btn-primary">
            <input type="radio" name="options" id="option2" autocomplete="off"> 单选框 2
        </label>
        <label class="btn btn-primary">
            <input type="radio" name="options" id="option3" autocomplete="off"> 单选框 3
        </label>
    </div>
    

    单选框按钮组

    <div class="btn-group btn-group-toggle" data-toggle="buttons">
        <label class="btn btn-primary active">
            <input type="radio" name="options" id="option1" autocomplete="off" checked>单选框 1
        </label>
        <label class="btn btn-primary">
            <input type="radio" name="options" id="option2" autocomplete="off"> 单选框 2
        </label>
        <label class="btn btn-primary">
            <input type="radio" name="options" id="option3" autocomplete="off"> 单选框 3
        </label>
    </div>
    

    警告框

    1. 关闭警告框

    设计一个警告框,并添加一个关闭按钮,只需为关闭按钮设置data-dismiss="alert"属性即可自动为警告框赋予关闭功能。
    使用JavaScript脚本来控制警告框关闭操作。

    <div class="alert alert-warning fade show">
        <strong>警告提示!</strong> 程序中出现一个语法问题。
        <button type="button" class="close" data-dismiss="alert">
            <span>&times;</span>
        </button>
    </div>
    

    js脚本控制警告框

    <body class="container">
    <div class="alert alert-warning fade show">
        <strong>警告提示!</strong> 程序中出现一个语法问题。
        <button type="button" class="close">
            <span>&times;</span>
        </button>
    </div>
    </body>
    <script>
        $(function(){
            //// 关闭警告框脚本
            $(".close").click(function(){
                $(".alert").alert("close")
            })
        })
    </script>
    

    2. 添加用户行为

    Bootstrap4为警告框提供了两个事件,说明如下:
     close.bs.alert:当close函数被调用之后,此事件被立即触发。
     closed.bs.alert:当警告框被关闭以后,此事件被触发。
    下列是一个警告框绑定模态框,当关闭警告框之前,将弹出一个模态框进行提示

    div class="modal" id="Modal-test">
        <div class="modal-dialog">
            <div class="modal-content">
                <div class="modal-header">
                    <h5 class="modal-title" id="modalTitle">提示</h5>
                    <button type="button" class="close" data-dismiss="modal">
                        <span>&times;</span>
                    </button>
                </div>
                <div class="modal-body">你确定要关闭警告框吗?</div>
                <div class="modal-footer">
                    <button type="button" class="btn btn-primary" data-dismiss="modal">是</button>
                    <button type="button" class="btn btn-secondary" data-dismiss="modal">否</button>
                </div>
            </div>
        </div>
    </div>
    </body>
    <script>
        $(function(){
            $(".close").click(function(){
                $(this).alert("close")
            })
            $(".alert").on("close.bs.alert",function(e){
                $("#Modal-test").modal();
            })
        })
    </script>
    

    下拉菜单

    1. 调用下拉菜单

    下拉菜单插件可以为所有对象添加下拉菜单,包括按钮、导航栏、标签页等。调用下拉菜单有以下两种方法。
    1.Data属性调用
    在超链接或者按钮上添加data-toggle="dropdown"属性,即可激活下拉菜单交互行为。

    <div class="dropdown">
        <button class="btn btn-primary dropdown-toggle" data-toggle="dropdown" type="button">
            下拉菜单
        </button>
        <div class="dropdown-menu">
            <a class="dropdown-item" href="#">菜单项1</a>
            <a class="dropdown-item" href="#">菜单项2</a>
            <a class="dropdown-item" href="#">菜单项3</a>
        </div>
    </div>
    

    2.JavaScript调用
    使用dropdown()构造函数可直接调用下拉菜单。

    <div class="dropdown">
        <button class="btn btn-primary dropdown-toggle" type="button">
            下拉菜单
        </button>
        <div class="dropdown-menu">
            <a class="dropdown-item" href="#">菜单项1</a>
            <a class="dropdown-item" href="#">菜单项2</a>
            <a class="dropdown-item" href="#">菜单项3</a>
        </div>
    </div>
    <script>
        $(function(){
            $(".btn").dropdown();
        })
    </script>
    

    3.配置参数
    可以通过data属性或JavaScript传递配置参数,参数如表11-1所示。对于data属性,参数名称追加到“data-”后面,例如:data-offset=""。

    参数 类型 默认值 说明
    offset number string function
    flip boolean True 允许下拉菜单在引用元素重叠的情况下翻转。
    <div class="dropdown">
        <button class="btn btn-primary dropdown-toggle" data-toggle="dropdown" data-offset="50,30" type="button">
            下拉菜单
        </button>
        <div class="dropdown-menu">
            <a class="dropdown-item" href="#">菜单项1</a>
            <a class="dropdown-item" href="#">菜单项2</a>
            <a class="dropdown-item" href="#">菜单项3</a>
        </div>
    </div>
    

    2. 添加用户行为

    事件 描述
    show.bs.dropdown 调用显示下拉菜单的方法时触发该事件
    shown.bs.dropdown 当下拉菜单显示完毕后触发该事件
    hide.bs.dropdown 当调用隐藏下拉菜单的方法时会触发该事件
    hidden.bs.dropdown 当下拉菜单隐藏完毕后触发该事件
    <div class="dropdown" id="dropdown">
        <button class="btn btn-primary dropdown-toggle" data-toggle="dropdown" type="button">
            下拉菜单
        </button>
        <div class="dropdown-menu">
            <a class="dropdown-item" href="#">菜单项1</a>
            <a class="dropdown-item" href="#">菜单项2</a>
            <a class="dropdown-item" href="#">菜单项3</a>
        </div>
    </div>
    </body>
    <script>
        $(function(){
            $("#dropdown").on("show.bs.dropdown",function(){
                $(this).children("[data-toggle='dropdown']").html("开始显示下拉菜单")
            })
            $("#dropdown").on("shown.bs.dropdown",function(){
                $(this).children("[data-toggle='dropdown']").html("下拉菜单显示完成")
            })
            $("#dropdown").on("hide.bs.dropdown",function(){
                $(this).children("[data-toggle='dropdown']").html("开始隐藏下拉菜单")
            })
            $("#dropdown").on("hidden.bs.dropdown",function(){
                $(this).children("[data-toggle='dropdown']").html("下拉菜单隐藏完成")
            })
        })
    </script>
    

    模态框(不懂)

    1. 定义模态框

    模态框是一个多用途的JavaScript弹出窗口,可以使用它在网站中显示警告窗口、视频和图片。
    在使用模态框插件时,注意以下几点:
     弹出模态框是用HTML、CSS和JavaScript构建的,模态框被激活时位于其它表现元素之上,并从中删除滚动事件,以便模态框自身的内容能得到滚动。
     点击模态框的灰背景区域,将自动关闭模块框。
    一次只支持一个模态窗口,不支持嵌套。
    模态框内容包括三个部分:头部、正文和页脚,分别使用.modal-header、.modal-body和.modal-footer定义。
    设计完成模态框结构后,需要为特定对象(通常使用按钮)绑定触发行为,才能通过该对象触发模态框。在这个特定对象中需要添加data-target="#Modal-test"属性来绑定对应的模态框,添加data-toggle="modal"属性指定要打开的模态框。

    <button type="button" class="btn btn-primary" data-toggle="modal" data-target="#Modal-test">
        打开模态框
    </button>
    

    模态框的完整结构

    <div class="modal fade" id="Modal">
        <div class="modal-dialog modal-dialog-centered">
            <div class="modal-content">
                <div class="modal-header">
                    <h5 class="modal-title" id="modalTitle">模态框标题</h5>
                    <button type="button" class="close" data-dismiss="modal">
                        <span>&times;</span>
                    </button>
                </div>
                <div class="modal-body">模态框正文</div>
                <div class="modal-footer">
                    <button type="button" class="btn btn-secondary" data-dismiss="modal">关闭</button>
                    <button type="button" class="btn btn-primary">提交</button>
                </div>
            </div>
        </div>
    </div>
    

    2. 模态框布局和样式

    1.垂直居中
    通过给

    努力拼搏吧,不要害怕,不要去规划,不要迷茫。但你一定要在路上一直的走下去,尽管可能停滞不前,但也要走。
  • 相关阅读:
    jQuery1.11源码分析(6)-----jQuery结构总揽
    保存知乎收藏夹功能的NodeJS版本
    浏览器兼容性小整理和一些js小问题(后面会继续更新)
    jQuery1.11源码分析(5)-----Sizzle编译和过滤阶段[原创]
    jQuery1.11源码分析(4)-----Sizzle工厂函数[原创]
    【原创】Redux 卍解
    【原创】移动端高清、多屏适配方案
    【原创】ui.router源码解析
    【原创】ReFlux细说
    【原创】express3.4.8源码解析之中间件
  • 原文地址:https://www.cnblogs.com/wkhzwmr/p/15114590.html
Copyright © 2011-2022 走看看