• jquery进阶(1)


    今天我们接着来学习jQuery中的内容,包括css的操作、尺寸的操作、文档的操作、动画(有待补充),事件处理操作。

    一、CSS

    在css中可以设置css的基本属性

    - .css("color")  -> 获取color css值
    - .css("color", "#ff0000") -> 设置值
    - .css({"color": "#cccccc", "border": "1px solid #ff0000"})  -> 设置多个值
    - .css(["color", "border"])  -> 获取多个值

     offset([coordinates])

    概述:

    获取匹配元素在当前视口的相对偏移。

    返回的对象包含两个整型属性:top 和 left,以像素计。此方法只对可见元素有效。

     参数:

    规定以像素计的 top 和 left 坐标。

    • 值对,比如 {top:100,left:0}
    • 带有 top 和 left 属性的对象

    无参数描述:

    获取第二段的偏移

    html代码:

    <p>Hello</p><p>2nd Paragraph</p>

     jQuery 代码:

    var p = $("p:last");
    var offset = p.offset();
    p.html( "left: " + offset.left + ", top: " + offset.top );

     结果:

    <p>Hello</p><p>left: 0, top: 35</p>

    有参数描述:

    获取第二段的偏移

    html代码:

    <p>Hello</p><p>2nd Paragraph</p>

     jQuery 代码:

    $("p:last").offset({ top: 10, left: 30 });

    position()

    概述:

    获取匹配元素相对父元素的偏移。

    返回的对象包含两个整型属性:top 和 left。为精确计算结果,请在补白、边框和填充属性上使用像素单位。此方法只对可见元素有效。

     注:

    - 获取相对已经定位的父标签的位置
    - 比较的是最近的那个做过定位的祖先标签

    scrollTop([val])
    - 返回顶部
    scrollLeft([val])

    其中val设置的是水平滚动条的值

    二、尺寸

    height([val|fn])
    - 元素的高度
    width([val|fn])
    innerHeight()
    - 带padding的高度
    innerWidth()
    outerHeight([soptions])
    - 在innerHeight的基础上再加border的高度
    outerWidth([options])

    jQuery代码:

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>尺寸</title>
        <style>
            .c1 {
                height: 100px;
                width: 80px;
                background-color: red;
            }
        </style>
    </head>
    <body>
    
    <div id="d1" class="c1"></div>
    
    <script src="jquery-3.2.1.js"></script>
    </body>
    </html>
    View Code

    执行的操作:

    $('#d1').height()
    $('#d1').width()
    $('#d1').innerHeight()  
    $('#d1').css('padding',20px)
    $('#d1').css('boder','2px solid #336699')
    $('#d1').outerHeight()

     三、文档的操作

    1.内部插入

    在内部插入包括append和prevend
    append(content|fn)  
    appendTo(content)
    
    A.append(B)
    ---把B添加到A的后面
    A.appendTo(B)
    ---把A添加到B的后面
    
    prevend(content|fn)
    prevend(contend)
    
    
    A.prevend(B)
    ---把B添加到A的前面
    A.prevendTo(B)
    ---把A添加到B的前面

     2.外部插入

    在外部插入包括after和before
    after(content|fn)   --> 往后加
    insertAfter(content)
        
    A.after(B)           
    ---把B添加到A的后面
    A.insertAfter(B)    
    ---把A添加到B的后面
        
    before(content|fn)   --> 往前加
    insertBefore(content)
        
    A.before(B)          
    ---把B添加到A的前面
    A.insertBefore(B)     
    ---把A添加到B的前面

     3.包裹

    包裹(把所有匹配的元素用其他元素的结构化标记包裹起来。)    
    wrap(html|ele|fn)
    A.wrap(B)  --> B包A
    unwrap()
        - 不要加参数
                
    wrapAll(html|ele)
    --将所有匹配的元素用单个元素包裹起来
    wrapInner(html|ele|fn)  
    --将每一个匹配的元素的子内容(包括文本节点)用一个HTML结构包裹起来

     4.替换

    replaceWith(content|fn)
    A.replaceWith(B)  --> B替换A
            
    replaceAll(selector)
    A.replaceAll(B)   --> A替换B

     5.删除

    empty()
    - 清空 内部清空
    remove([expr])
    - 删除 整体都删除
    detach([expr])
    - 剪切  多保存在变量中,方便再次使用

     6.复制

    clone([Even[,deepEven]])
    
    例:
    创建一个按钮,他可以复制自己,并且他的副本也有同样功能。
    
    html代码:
    <button>Clone Me!</button>
    
    jQuery 代码:
    $("button").click(function(){
      $(this).clone(true).insertAfter(this);
    });

    四、 动画

    基本
    show([s,[e],[fn]])     图片的显示
    hide([s,[e],[fn]])      图片的隐藏
    toggle([s],[e],[fn])   
        
    滑动
    slideDown([s],[e],[fn])
    slideUp([s,[e],[fn]])
    slideToggle([s],[e],[fn])
        
    淡入淡出
    fadeIn([s],[e],[fn])
    fadeOut([s],[e],[fn])
        
        fadeTo([[s],o,[e],[fn]])
            - 淡出到0.66透明度
        fadeToggle([s,[e],[fn]])
            - .fadeToggle(3000, function () {
                alert("真没用3");
            });
            
    自定义
    animate(p,[s],[e],[fn])1.8*
        - css属性值都可以设置 

    五、事件处理

    之前绑定事件的方式:
            1. onclick=clickMe();  function clickMe() {}
            2. ele.onclick = function(){}
            3. ele.addEventListener("click", function(){})
        
    jQuery绑定事件的方式:
            1. $(ele).on("click", function(){})
            2. $("tbody").delegate(".btn-warning", "click", function(){})
            3. $("tbody").on("click",".btn-warning",function(){})  我们要用的事件委派
  • 相关阅读:
    VC++学习(16):线程同步与异步套接字
    VC++学习(15):多线程
    VC++学习(12):文件操作
    VC++学习(10):绘图控制
    VC++学习(13):文档串行化
    VC++学习(11):图形的保存和重绘
    VC++学习(18):Active控件
    四大数据库的比较(SQL Server、Oracle、Sybase和DB2)
    Gridview中二级联动
    VS 2008中PDA开发环境的相关配置
  • 原文地址:https://www.cnblogs.com/moning/p/7678362.html
Copyright © 2020-2023  润新知