前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布

JQuery

作者头像
zhengzongwei
发布2019-07-31 14:58:19
9420
发布2019-07-31 14:58:19
举报
文章被收录于专栏:Python | BlogPython | Blog

版权声明:Copyright © https://cloud.tencent.com/developer/article/1477144

JQuery

jquery选择器

代码语言:javascript
复制
jquery选择器可以快速地选择元素,选择规则和css样式相同,使用length属性判断是否选择成功。

$('#myId') //选择id为myId的网页元素

$('.myClass') // 选择class为myClass的元素

$('li') //选择所有的li元素

$('#ul1 li span') //选择id为为ul1元素下的所有li下的span元素

$('input[name=first]') // 选择name属性等于first的input元素

对选择集进行过滤

代码语言:javascript
复制
$('div').has('p'); // 选择包含p元素的div元素

$('div').not('.myClass'); //选择class不等于myClass的div元素

$('div').eq(5); //选择第6个div元素

选择集转移

代码语言:javascript
复制
$('#box').prev(); //选择id是box的元素前面紧挨的同辈元素

$('#box').prevAll(); //选择id是box的元素之前所有的同辈元素

$('#box').next(); //选择id是box的元素后面紧挨的同辈元素

$('#box').nextAll(); //选择id是box的元素后面所有的同辈元素

$('#box').parent(); //选择id是box的元素的父元素

$('#box').children(); //选择id是box的元素的所有子元素

$('#box').siblings(); //选择id是box的元素的同级元素

$('#box').find('.myClass'); //选择id是box的元素内的class等于myClass的元素

jq 入口函数

代码语言:javascript
复制
$(doctument).ready(function(){

})

$(function(){

})

动画函数

animate参数:

代码语言:javascript
复制
参数一:要改变的样式属性值,写成字典的形式

参数二:动画持续的时间,单位为毫秒,一般不写单位

参数三:动画曲线,默认为‘swing’,缓冲运动,还可以设置为‘linear’,匀速运动

参数四:动画回调函数,动画完成后执行的匿名函数

``` JavaScript

$('#div1').animate({

代码语言:txt
复制
width:300,
代码语言:txt
复制
height:300

},1000,'swing',function(){

代码语言:txt
复制
alert('done!');

});

代码语言:txt
复制

jQuery 属性操作

.html()

.prop()

.attr() 获取自定义标签的值,用法和prop一样

循环 each

代码语言:javascript
复制
   $(function(){
        $('li').each(function(event){
            // each里面形参表示的是each选中的标签的索引值
            // alert(event)
            $(this).html(event)
        })
    })

jquery事件

事件

描述

click()

点击事件

blur()

失去焦点

focus()

获取焦点

mouseover()

鼠标进入(进入子元素也触发)

mouseout()

鼠标离开(离开子元素也触发)

mouseenter()

鼠标进入(进入子元素不触发)

mouseleave()

鼠标离开(离开子元素不触发)

hover()

同时为mouseenter和mouseleave事件指定处理函数

submit()

提交表单

表单验证

规则:

var re = new RegExp(‘规则’,’可选参数’)

var re =/规则/参数;

事件冒泡

作用: 事件冒泡允许多个被集中处理(把事件处理器添加到一个父级元素上,避免把事件处理器添加到多个子级元素上),它还可以让你在对象层的不同级别捕获事件。

代码语言:javascript
复制
$(function(){
    var $box1 = $('.father');
    var $box2 = $('.son');
    var $box3 = $('.grandson');
    $box1.click(function() {
        alert('father');
    });
    $box2.click(function() {
        alert('son');
    });
    $box3.click(function(event) {
        alert('grandson');
        event.stopPropagation();

    });
    $(document).click(function(event) {
        alert('grandfather');
    });
})

......

<div class="father">
    <div class="son">
        <div class="grandson"></div>
    </div>
</div>

阻止默认行为

return falses

事件委托

用法: $(‘ul’).delegete(事件发生在哪,事件属性,匿名函数)

作用:

  1. 提高代码执行效率
  2. 给未来元素绑定命令(单纯给未来元素绑定命令 $(‘li’).on(事件属性,匿名函数))

DOM操作(节点操作)

DOM: 网页文档的根/根标签

追加节点:同级追加和自己追加(前面 后面)

步骤:

  1. 声明变量保存的节点数据
  2. 使用追加函数追加节点

子级追加:

  1. append()和appendTo():在现存元素的内部,从后面放入元素
  2. prepend()和prependTo():在现存元素的内部,从前面放入元素

父级追加:

  1. after()和insertAfter():在现存元素的外部,从后面放入元素
  2. before()和insertBefore():在现存元素的外部,从前面放入元素

删除节点:remove()或empty()

代码语言:javascript
复制
   $(function(){
        // 追加节点:同级追加 和 子级追加  (前面  后面)
        // 步骤:1、声明变量保存节点数据;2、使用追加函数追加节点
        var $li = $('<li>2222</li>')
        // ul子级追加
        // $li.appendTo($('ul'))  //结尾追加
        // $('ul').append($li)
        // $li.prependTo($('ul'))  // 开头追加
        // $('ul').prepend($li)

        var $div = $('<div>divdiv</div>')
        // $div.insertAfter($('ul'))
        // $('ul').after($div)
        // $div.insertBefore($('ul'))
        // $('ul').before($div)

        // 删除节点
        // $('ul').remove()
        // $('ul').empty()
    })

ajax和json

ajax技术的目的是让javascript发送http请求,与后台通信,获取数据和信息。

ajax技术的原理是实例化xmlhttp对象,使用此对象与后台通信。ajax通信的过程不会影响后续javascript的执行,从而实现异步。

同步和异步

同步:一件事情做完再去做另一件事情

异步:同时做多件事情

.ajax使用方法

常用参数:

1、url 请求地址

2、type 请求方式,默认是’GET’,常用的还有’POST’

3、dataType 设置返回的数据格式,常用的是’json’格式,也可以设置为’html’

4、data 设置发送给服务器的数据

5、success 设置请求成功后的回调函数

6、error 设置请求失败后的回调函数

7、async 设置是否异步,默认值是’true’,表示异步

代码语言:javascript
复制
以前的写法:

$.ajax({
    url: '/change_data',
    type: 'GET',
    dataType: 'json',
    data:{'code':300268}
    success:function(dat){
        alert(dat.name);
    },
    error:function(){
        alert('服务器超时,请重试!');
    }
});

新的写法(推荐):

$.ajax({
    url: '/change_data',
    type: 'GET',
    dataType: 'json',
    data:{'code':300268}
})
.done(function(dat) {
    alert(dat.name);
})
.fail(function() {
    alert('服务器超时,请重试!');
});

$.ajax的简写方式

$.ajax按照请求方式可以简写成$.get或者$.post方式

$.get("/change_data", {'code':300268},
  function(dat){
    alert(dat.name);
});

$.post("/change_data", {'code':300268},
  function(dat){
    alert(dat.name);
});
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2018年07月21日,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • JQuery
    • jquery选择器
      • 对选择集进行过滤
      • 选择集转移
    • jq 入口函数
      • 动画函数
        • jQuery 属性操作
          • 循环 each
            • jquery事件
              • 表单验证
                • 事件冒泡
                  • 阻止默认行为
                • 事件委托
                  • DOM操作(节点操作)
                    • ajax和json
                      • 同步和异步
                        • .ajax使用方法
                    领券
                    问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档