zoukankan      html  css  js  c++  java
  • jQuery学习总结2

    六、动画效果

    6.1、基本

    hide([speed,[fn]])隐藏显示的元素

    speed: 三种预定速度之一的字符串("slow","normal", or "fast")或表示动画时长的毫秒数值(如:1000);

    fn:在动画完成时执行的函数。

     

    show([speed,[fn]])显示隐藏的匹配元素

    speed: 三种预定速度之一的字符串("slow","normal", or "fast")或表示动画时长的毫秒数值(如:1000);

    fn:在动画完成时执行的函数。

     

    toggle

    用于绑定两个或多个事件处理器函数,以响应被选元素的轮流的 click 事件。

    6.2、滑动(卷帘门)

    注意:必须对图片设置width才可以实现卷帘门效果

    slideDown([speed],[fn])显示

    通过高度变化(向下增大)来动态地显示所有匹配的元素,在显示完成后可选地触发一个回调函数。

     

    slideUp([speed,[fn]])隐藏

    通过高度变化(向上减小)来动态地隐藏所有匹配的元素,在隐藏完成后可选地触发一个回调函数。

     

    slideToggle([speed],[fn])切换

    通过高度变化来切换所有匹配元素的可见性,并在切换完成后可选地触发一个回调函数

    6.3淡入淡出

    fadeIn([speed],[fn])淡入

    通过不透明度的变化来实现所有匹配元素的淡入效果,并在动画完成后可选地触发一个回调函数。

    fadeOut([speed],[fn])淡出

    通过不透明度的变化来实现所有匹配元素的淡出效果,并在动画完成后可选地触发一个回调函数。

    fadeToggle([speed,[fn]]) 反复点击,实现反复的淡入淡出效果,可以设置定时器

    fadeTo([[speed],opacity,[fn]])       调整到指定的不透明度,0全透明,1不透明

    6.4自定义动画

    animate(params,[speed],[easing],[fn])      //(阿尼马特,好记而已)

    params:一组包含作为动画属性和终值的样式属性和及其值的集合

    speed:三种预定速度之一的字符串("slow","normal", or"fast")或表示动画时长的毫秒数值(如:1000)

    easing:要使用的擦除效果的名称(需要插件支持).默认jQuery提供"linear""swing".

    fn:在动画完成时执行的函数,每个元素执行一次。

    animate原理是修改css,不能直接改背景颜色

    七、文档操作

    7.1 节点追加

    7.1.1内部追加

    append(content)

    向匹配的元素内部追加内容。

    appendTo(content)

    把匹配的元素追加到另一个指定的元素集合中

    prepend(content)

    内容前置到匹配的元素内部;

    prependTo(content)

    把匹配的元素前置到另一个、指定的元素集合中

    7.1.2 外部追加

    after(content)

    在匹配的元素之后插入内容。

    before(content)

    在匹配的元素之前插入内容。

    insertAfter(content)

    把匹配的元素插入到另一个、指定的元素集合的后面。

    insertBefore(content)

    把匹配的元素插入到另一个、指定的元素元素集合的前面。

     

    7.2 删除

    empty()

    删除匹配的元素集合中所有的子节点。标签保留

    remove([expr])

    DOM中删除所有匹配的元素。将标签也一同删除

    7.3 复制(克隆)

    clone([Even])

    克隆匹配的DOM元素

    Even:一个布尔值(true或者false)指示事件处理函数是否会被复制。

    7.4 替换

    html代码:

    <p>Hello</p><p>cruel</p><p>World</p>


    jQuery代码:

    $("<b>Paragraph.</b>").replaceAll("p");
    $("p").replaceWith("<b>Paragraph.</b>");


    结果:

    <b>Paragraph. </b><b>Paragraph.</b><b>Paragraph. </b>


     

    replaceAll(content)  主动替换,用匹配的元素替换掉所有 selector匹配到的元素。

    replaceWith(content) 被动替换

    将所有匹配的元素替换成指定的HTMLDOM元素。

    html([val])

    val 有值,则用于设定HTML内容的值,没有则获取内容值;

     

    7.5 包裹

    wrap(html|ele|fn)

    把所有匹配的元素用其他元素的结构化标记包裹起来。

    unwrap()

    移出选中元素的父元素

    wrapAll(html|ele)

    将所有匹配的元素用单个元素包裹起来

    wrapInner(html|ele|fn)

    将每一个匹配的元素的子内容(包括文本节点)用一个HTML结构包裹起来

     

    7.6 查找

    问题及效果:

    将选择器以jq方法调用形式实现;

    知识点:

    eq(index) :根据元素的index索引来查找元素

    filter(expr) :筛选操作,$(‘div’).filter(‘.cls1’);

    not(expr) :匹配除指定选择器以外的其他元素

    children([expr]) :获取当前元素下的所有子元素

    find(expr) :获取当前元素下的所有后代元素

    next([expr]) :获取当前元素下紧邻的下一个元素

    prev([expr]) :获取当前元素上紧邻的上一个元素

    parent([expr]) :获取当前元素的父元素

    siblings([expre]) :获取当前元素的所有同级兄弟元素

     

     

    八、插件

    8.1 为元素扩展新方法

    $.fn.extend(ob)或者 $、jQuery.fn.extend(ob)

    obJS对象         如:{name:‘Joe}

     

    8.2 扩展jq对象本身

    jQuery.extend(ob)或者$.extend(ob)

     

    8.3 each 方法

    each(callback)

    以每一个匹配的元素作为上下文来执行一个函数。

     

    九、jQuery中的ajax

    9.1 ajax 的底层实现

    $.ajax(obj)

    对象的参数设置及含义:

    async布尔类型,代表是否异步,true代表异步,false同步,默认为true

    cache是否缓存,布尔类型,true代表缓存,false代表不缓存,默认为true

    completeAjax状态码(readyState4的时候所触发的回调函数

    contentType发送信息至服务器时内容编码类型;(默认:"application/x-www-form-urlencoded")

    data要求是一个字符串格式,Ajax发送时所传递的数据

    dataType期待的返回值类型,可以是textxmljson默认为text类型

    successAjax状态码为4且响应状态码为200时所触发的回调函数

    typeAjax发送网络请求的方式,(默认: "GET")

    url请求的url地址

     

    //get请求
    $.ajax({
    url:'9-2.php?id=11',
    success:function(data){
    alert(data);
    }
    });
     
    //POST请求及同步异步
    $.ajax({
    url:'9-2.php',
    type:'post',
    data:'id=1111',
    success:function(data){
    alert(data);
    },
    // async:false,
    });


     

    9.2、ajax 的高层实现

    9.2.1 GET 应用

    基本语法:

    $.get(url, [data], [callback], [type])

    url:待载入页面的URL地址

    data:待发送Key/value参数。

    callback:载入成功时回调函数。

    type:返回内容格式,xml, html, script, json, text, _default

    案例代码:

    <script>
    $('#btu').click(function(){
    $.get('9-2.php',function(data){
    alert(data.a);
    },'json');
    });
    </script>


    但是注意:IE浏览器存在缓存问题;

    解决缓存问题修改:

    <script>
    $('#btu').click(function(){
    var da = {_:new Date().getTime()};
    $.get('9-2.php',da,function(data){
    alert(data.a);
    },'json');
    });
    </script>


    9.2.2 POST 应用

    $.post(url, [data], [callback], [type])

    url:发送请求地址。

    data:待发送Key/value参数。

    callback:发送成功时回调函数。

    type:返回内容格式,xml, html, script, json, text, _default

    案例代码:

    <script>
    $('#btu').click(function(){
    $.post('9-2.php',
    {id:'11'},
    function(data){
    alert(data.a);
    },'json');
    });
    </script>


     

    十、jQuery中的跨域问题

    Ajax技术受到浏览器同源策略的限制,禁止从一个域上向另外一个域发送请求。

    前端jq跨域的三种用法

    <script>
    $('#btu').click(function(){
    //$.ajax 方法的jsonp跨域
    $.ajax({
    url:'http://bbs.com/1.php?fn=?',
    dataType:'jsonp',
    success:function(data){
    alert(data.b);
    }
    });
    //$.get 方法的jsonp跨域
    $.get('http://bbs.com/1.php?fn=?',function(data){
    alert(data.b);
    },'jsonp');
    // $.getJSON 方法的jsonp跨域
    $.getJSON(
    'http://bbs.com/1.php?fn=?',
    function(data){
    alert(data.b);
    },
    );
    });
    </script>
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
  • 相关阅读:
    进度条
    html5 表单新增事件
    html5 表单的新增type属性
    html5 表单的新增元素
    html5 语义化标签
    jq 手风琴案例
    codeforces 702D D. Road to Post Office(数学)
    codeforces 702C C. Cellular Network(水题)
    codeforces 702B B. Powers of Two(水题)
    codeforces 702A A. Maximum Increase(水题)
  • 原文地址:https://www.cnblogs.com/idjl/p/9610607.html
Copyright © 2011-2022 走看看