zoukankan      html  css  js  c++  java
  • 前端之jQuery及Bootstrap框架

    jQuery相关

    三级菜单展示

    $(this).next().removeClass('hide').parent().siblings().find('.items').addClass('hide')
    

    直接操作css属性

    // 两个参数设置属性
    $('#p1').css('font-size','24px')
    // 一个参数获取属性
    $('#p1').css('font-size')
    
    // 一次设置多个属性
    $('#p1').css({"border":"1px solid black","color":"blue"})
    

    位置操作

    // 不加参数获取位置参数
    $(".c3").offset()
    // 加参数设置位置参数
    $(".c3").offset({top:284,left:400})
    
    // position只能获取值,不能设置值
    
    // scrollTop获取当前滚动条偏移量
    $('window').scrollTop();
    $('window').scrollTop(0);  // 设置滚动条偏移量
    

    尺寸

    // 盒子模型测试下列参数
    height()
    width()
    innerHeight()
    innerWidth()
    outerHeight()
    outerWidth()
    // 加参数标签设置值
    

    文本操作

    // text() html() 不加参数获取值,加参数设置值
    // val() 不加参数获取值,加参数设置值
    

    自定义登陆校验

    <form action="">
      <div>
        <label for="input-name">用户名</label>
        <input type="text" id="input-name" name="name">
        <span class="error"></span>
      </div>
      <div>
        <label for="input-password">密码</label>
        <input type="password" id="input-password" name="password">
        <span class="error"></span>
      </div>
      <div>
        <input type="button" id="btn" value="提交">
      </div>
    </form>
    <script src="https://cdn.bootcss.com/jquery/3.2.1/jquery.min.js"></script>
    <script>
      $("#btn").click(function () {
        var username = $("#input-name").val();
        var password = $("#input-password").val();
    
        if (username.length === 0) {
          $("#input-name").siblings(".error").text("用户名不能为空");
        }
        if (password.length === 0) {
          $("#input-password").siblings(".error").text("密码不能为空");
        }
      })
    </script>
    
    <!--js代码取消默认事件的方式-->
    return false
    

    属性操作

    // 获取文本属性
    $('#d1').attr('s1')  // 获取属性值
    $('#d1').attr('s1','haha')  // 设置属性值
    $('#d1').attr({'num':50,'taidi':'gay'})  // 设置多个属性
    $('#d1').removeAttr('taidi')  // 删除一个属性
    
    // 获取check与radio标签的checked属性
    $('#i1').prop('checked')
    $('#i1').prop('checked',true)
    

    文档处理

    // 标签内部尾部追加元素
    $('#d1').append(pEle)
    $pEle.appendTo($('#d1'))
    
    // 标签内部头部添加元素
    $('#d1').prepend(pEle)
    $pEle.prependTo($('#d1'))
    
    // 标签外部下面添加元素
    $(A).after(B)// 把B放到A的后面
    $(A).insertAfter(B)// 把A放到B的后面
    
    // 标签外部上面添加元素
    $(A).before(B)// 把B放到A的前面
    $(A).insertBefore(B)// 把A放到B的前面
    
    // 替换标签
    replaceWith()  // 什么被什么替换
    replaceAll()  // 拿什么替换什么
    
    // 克隆事例
    <button id="b2">屠龙宝刀,点击就送</button>
    // clone方法加参数true,克隆标签并且克隆标签带的事件
      $("#b2").on("click", function () {
        $(this).clone(true).insertAfter(this);  // true参数
      });
    

    事件

    // click事件以上面的克隆案例为参考
    
    // hover事件
    $('p').hover(  // 写两个函数一个表示鼠标移进去,另一个标示鼠标移出来
      function () {
        alert('来啦,老弟')
      },
      function () {
        alert('慢走哦~')
      }
    )
    // input实时监听
        $('#i1').on('input',function () {
            console.log($(this).val())
        });
    
    // focus/blur 其他同理js事件
    
    // 取消标签默认的事件
    return false
    
    $('input').click(function (e) {
            alert(123);
            // return false
            e.preventDefault();
        });
    
    
    // 事件冒泡
    div>p>span  // 三者均绑定点击事件
    $("span").click(function (e) {
            alert("span");
            e.stopPropagation();  // 阻止事件冒泡
        });
    
    // 事件委托
    <button>按钮</button>
    <script src="jQuery-3.3.1.js"></script>
    <script>
        $('body').on('click','button',function () {
            alert(123)
        })
    </script>
    

    文档加载

    $(document).ready(function(){
    // 在这里写你的JS代码...
    })
    
    $(function(){
    // 你在这里写你的代码
    })
    

    jQuery自带的动画效果

    // 标签记得设置高和宽
    
    $('img').hide(5000)
    $('img').show(5000)
    
    $('img').slideDown(5000)
    $('img').slideUp(5000)
    
    $('img').fadeIn(5000)
    $('img').fadeOut(5000)
    $('img').fadeTo(5000,0.4)
    

    each()

    $.each(array,function(index){
      console.log(array[index])
    })
    
    $.each(array,function(){
      console.log(this);
    })
    
    // 支持简写
    $divEles.each(function(){
      console.log(this)  // 标签对象
    })
    

    data()

    $("div").data("k",100);//给所有div标签都保存一个名为k,值为100
    $("div").data("k");//返回第一个div标签中保存的"k"的值
    $("div").removeData("k");  //移除元素上存放k对应的数据
    

    Bootstrap框架

    生产环境下载

    CDN简介(内容分发网络)

    bootstrap文件划分

    • js

      只需要留一个bootstrap.min.js即可

    • css

      只需要一个bootstrap.min.css即可

    • fonts

      都是必须的,不需要我们手动导入,js文件会自动查找导入对于的fonts文件

    注意

    bootstrap中的js文件依赖于jQuery,所以使用bootstrap需要先导入jQuery

    实例精选

    实际网站示例

    Normalize.css(不同浏览器样式一致性)

    布局容器

    • container与container-fluid

    栅格系统

    • row(行)
    • col(列)
    <style>
            .red {
                background-color: red;
                border: 3px solid green;
                height: 100px;
            }
    </style>
    <div class="container">
        <div class="row">
            <div class="col-md-6 red"></div>
            <div class="col-md-6 red"></div>
        </div>
    </div>
    <!--
            6,6
            2,10
            1~12
            再次理解class里面写的属性值到底是干啥的
    -->
    <!--借助谷歌浏览器自动切换手机或电脑屏幕,只需要加一个col-xs-6生成对应的布局-->
    

    媒体查询

    <style>
    				.c1 {
                background-color: red;
            }
            @media screen and (max- 600px){
                .c1 {
                    background-color: green;
                }
            }
    </style>				
    <div class="col-md-6 red c1"></div>
    

    响应式列重置

    <style>
    				.c2 {
                background-color: red;
            }
            .c3 {
                height: 60px;
            }
    </style>
    <div class="container">
        <div class="row">
      <div class="col-xs-6 col-sm-3 c3 c2">.col-xs-6 .col-sm-3</div>
      <div class="col-xs-6 col-sm-3 c2">.col-xs-6 .col-sm-3</div>
      <!-- Add the extra clearfix for only the required viewport -->
      <div class="clearfix visible-xs-block"></div>
      <div class="col-xs-6 col-sm-3 c2">.col-xs-6 .col-sm-3</div>
      <div class="col-xs-6 col-sm-3 c2">.col-xs-6 .col-sm-3</div>
    </div>
    </div>
    

    列偏移

    <div class="col-md-4 col-md-offset-4">.col-md-4 .col-md-offset-4</div>
    

    排版

    <h1>h1. Bootstrap heading <small>Secondary text</small></h1>
    <p class="lead">...</p>
    <mark>highlight</mark>
    <!--两者效果一样,但是语义不一样-->
    <del>This line of text is meant to be treated as deleted text.</del>
    <s>This line of text is meant to be treated as no longer accurate.</s>
    
    <blockquote>
      <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer posuere erat a ante.</p>
      <footer>Someone famous in <cite title="Source Title">Source Title</cite></footer>
    </blockquote>
    
    
    <!--列表组-->
    <ul class="list-unstyled">
      <li>...</li>
    </ul>
    
    <ul class="list-inline">
      <li>...</li>
    </ul>
    

    表格标签

    <table class="table table-bordered table-hover table-striped"></table>
    <tr class="active">...</tr>
    

    表单

    • 登陆示例

    • input框提示信息显影

    按钮

    <button class='btn-success/btn-info/btn-primary/btn-danger/btn-warning'>
      按钮
    </button>
    

    快速浮动

    <div class="pull-left">...</div>
    <div class="pull-right">...</div>
    

    组件

    <!--字体图标 意味着操作它跟操作普通文本一样   爱心图标举例-->
    <!--图标大小可以通过调span标签所在的父标签调节-->
    

    Font-Awesome简介

    • css
    • fonts

    标签页

    • 实际应用场景 >>> 购物网站物品各类信息(JS插件标签页)

    JS插件

    模态框

    • data参数绑定

      <button type="button" data-toggle="modal" data-target="#myModal">Launch modal</button>
      
    • 自定义代码

    $('#myModal').modal('show/hide')
    

    sweetalert插件

    https://lipis.github.io/bootstrap-sweetalert/

    下载只需要用dist文件夹

    swal('标题')
    swal('标题','文本')
    swal('标题','文本','success')
    swal('标题','文本','warning')
    swal('标题','文本','info')
    swal('标题','文本','error')
    
  • 相关阅读:
    jsp中上传图片(使用ajaxfileupload)
    快慢的悖论
    为什么所有的架构都是糟糕的
    软件项目是这样失败的。
    初识微信小程序
    Hibernate hql getHibernateTemplate()常用方法汇总
    JAVA中关于set()和get()方法的理解及使用
    java性能调优实战
    PLSQL显示乱码-无法进行中文条件查询解决
    Oracle 10g bigfile表空间简介
  • 原文地址:https://www.cnblogs.com/fuwei8086/p/10975617.html
Copyright © 2011-2022 走看看