jquery的总结

jQuery基本概念

JQuery基本概念使用javascript开发过程中,有许多的缺点:

 

    1. 查找元素的方法太少,麻烦。

    2. 遍历伪数组很麻烦,通常要嵌套一大堆的for循环。

    3. 有兼容性问题。

    4. 想要实现简单的动画效果,也很麻烦

5. 代码冗余。

 

什么是jQuery?

 

jQuery就是一个js库,使用jQuery的话,会比使用JavaScript更简单。

js库:把一些常用到的方法写到一个单独的js文件,使用的时候直接去引用这js文件就可以了。

jQuery其实就是一个js文件,里面封装了一大堆的方法方便我们的开发,其实就是一个加强版的common.js,因此我们学习jQuery,其实就是学习jQuery这个js文件中封装的一大堆方法。

 

 

 

jquery对象和js对象:

       jquery对象:通过$()获取的元素

       js对象:通过document的方式获取的元素

       两者之间的区别与联系:

           区别:jquery对象只能调用jquery对象的方法和属性,js同理,不能调用jquery的属性和方法

           联系:jquery对象可以看作是由js对象组成的集合,可以遍历jquery对象得到js对象

                   jquery对象----> js对象   jquery对象[索引]   jquery对象.get(索引)

                   js对象---->jquery对象    $(js对象)

入口函数:

      window.οnlοad=function(){}

      $(document).ready(function(){})

      $(function(){})

    

$ 的实质 :函数

       参数:①函数:入口函数  ②js对象:jquery对象  ③字符串: 获取的元素

     

  选择器:

      基本选择器:id选择器---获取指定ID的元素 

类选择器---获取同一类class的元素

标签选择器---获取同一类标签的所有元素

并集选择器---使用逗号分隔,只要符合条件之一就可。

交集选择器---获取class为redClass的div元素

      层级选择器:后代选择器---使用空格,代表后代选择器,获取ul下的所有li元素,包括孙子等

子代选择器---使用>号,获取儿子层级的元素,注意,并不会获取孙子层级的元素

      过滤选择器:  :even---选择索引为偶数的元素

:odd---选择索引号为奇数的元素

:eq(索引)---选择索引号为2的元素,索引号index从0开始

:first

      筛选选择器(方法): children(选择器)---相当于$(“ul>li”),子类选择器

parent()---查找父亲

siblings(选择器)---查找兄弟节点,不包括自己本身

next()---找下一个兄弟

prev()---找上一个兄弟

find(选择器)---相当于$(“ul li”),后代选择器

eq(索引)---相当于$(“li:eq(2)”),index从0开始

     动画函数:

        show()  显示

hide()  隐藏

fadeIn()  淡入   

fadeOut()  淡出  

slideUp()   用于向上滑动隐藏元素

slideDown()  用于向下滑动隐藏元素

SlideToggle() 如果元素向下滑动,则 slideToggle() 可向上滑动它们。如果元素向上滑动,则 slideToggle() 可向下滑动它们

第一个参数:动画执行的时间,固定的字符串,毫秒数字

        第二个参数:回调函数,

        第三个参数:动画执行的方式:swing linear

    

     自定义动画函数: animate()

       1:{属性键值对}

       2:动画持续的时间

       3:动画执行的方式: swing(摇摆) linear(匀速)

       4:回调

    

       动画队列:要执行动画,先排队,前面的动画执行完成后,在执行后面动画

       停止动画:stop()

 

 

css操作:修改样式

           css("样式属性","样式属性值")

           css({"属性1":"属性值1","属性2":"属性值2"})

           获取属性: css("属性名")

      class操作:操作类

           添加类名: addClass("类名")

  删除类:removeClass("类名")

            判断类是否存在:hasClass("类名")

            移除类:removeClass(“类名”)

            切换类:toggleClass("类名")

    

      attr():操作普通的属性,用法和css()的用法一样

          attr("属性","属性值");

          attr({"属性1":"属性值1","属性2":"属性值2"});

          attr("属性")

    

     prop():操作属性值为bool类型的属性

    

     

 

    节点的操作:

          创建节点:$("标签和内容")

          将节点添加到页面中

    嵌套关系:

          向后追加:父元素.append(子元素)  子元素.appendTo(父元素)

          往前面添加: 父元素.prepend(子元素)  子元素.prependTo(父元素)

          并列关系: 兄弟.after(元素)  兄弟.before(元素)

    清空节点: 节点.empty()

         删除节点:节点.remove()

         克隆节点:节点.clone(true)

    

    获取元素的文本内容:

    表单元素的文本内容:

         获取: 对象.val()  设置: 对象.val("设置的文本内容")

    非表单的元素

        获取: 对象.text()  对象.html()

    封装的特殊的属性获取

        获取元素的宽度和高度:  width()  height()

                                innerHeight(): height+padding

                                outerHeight(): height +padding + border

                                outerHeight(true): height +padding +border +margin

        卷曲出去的值: scrollTop()  scrollLeft()

        获取位置:offset()  position()

   

   事件机制

       简单的事件----》bind----》delegate事件 ----》on    

       绑定:对象.on("事件的类型","谁执行",数据,function(e){});

       解绑:对象.off();//不写参数,将所有的事件都解绑,带有参数,解绑这个事件类型的所有事件

       第三个参数:在回调函数中  e.data

    

       阻止浏览器的默认事件: e.preventDefault()

       阻止事件冒泡:e.stopPropagation()

                     return false;

 

       ajax:asyns javascript and  xml

       ajax的原理:通过XMLHTTPRequest对象,向服务器发送请求,服务响应数据,把响应的结果通过JavaScript渲染到页面中

      ajax的优点:异步加载,局部刷新

      ajax的使用:

         var xhr= new XMLHTTPRequest()

         xhr.open('请求方式','url地址','是否异步')

         xhr.send('');

      响应---事件机制的方式 onreadystatechange  readyState 0,1,2,3,4 status

               dVObj.innerHTML=this.responseText;

    

      异步:一次执行一堆,后面的内容不等前面的执行完。

      响应内容:responseText----是一个字符串

               序列化:将字符串格式转换为json格式  JSON.parse()

               反序列化:将json格式的数据转换为string格式  JSON.stringfiy()

    

    jquery封装ajax的方法

    load(): $(对象).load('接口地址',{传递的参数:参数值},function(){})

    

jquery中get方法和post方法

           $.get('url',传入的参数,成功的回调函数(response,status))

           $.post('url','传入的参数',成功的回调函数,返回的数据类型)

    jquery中的ajax()

        $.ajax({

        url:'请求地址',

        type:'get/post',

        data:'传入的参数',

        dataType:'响应的数据类型',

        success:function(response){},

        error:function(){},

        complete:function(){}

        });

    

      jsonp 的使用方法:ajax()

      $.ajax({

           url:'',

           jsonp:'',

           dataType:'jsonp',

    

           success:function(){}

       })

    瀑布流

          wrap盒子没有宽度,相框的宽度* 多少列相框

         当滚动条滚到到最底部的时候,添加相框---ajax

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值