• Jquery


    jquery的口号和愿望 Write Less, Do More(写得少,做得多)

    windows.onload:不仅文档的标签需要加载,还要等文档对应的资源加载完,比如img标签的图片的大小资源的加载

    $(document).ready(function(){}):只需要等标签加载完毕就可以了 

    query选择器 
    jquery选择器可以快速地选择元素,选择规则和css样式相同,使用length属性判断是否选择成功。

    $('#myId') //选择id为myId的网页元素
    $('.myClass') // 选择class为myClass的元素
    $('li') //选择所有的li元素
    $('#ul1 li span') //选择id为为ul1元素下的所有li下的span元素
    $('input[name=first]') // 选择name属性等于first的input元素
    

    对选择集进行过滤

    $('div').has('p'); // 选择包含p元素的div元素
    $('div').not('.myClass'); //选择class不等于myClass的div元素
    $('div').eq(5); //选择第6个div元素

    选择集转移

    $('#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的元素
    

     

    jquery有容错机制,即使没有找到元素,也不会出错,可以用length属性来判断是否找到了元素,length等于0,就是没选择到元素,length大于0,就是选择到了元素。

    jquery操作样式

    1、操作行间样式: 读取:$div.css(‘width’)     写入:$div.css({‘width’:100,’height:’100’})

    2、操作样式类名: 增加样式类名  addClass(‘类名’) 删除样式类名:removeClass(‘类名’)

    操作样式类名

    $("#div1").addClass("divClass2") //为id为div1的对象追加样式divClass2
    $("#div1").removeClass("divClass")  //移除id为div1的对象的class名为divClass的样式
    $("#div1").removeClass("divClass divClass2") //移除多个样式
    $("#div1").toggleClass("anotherClass") //重复切换anotherClass样式

    检查jquery是否选择了元素:用jquery对象的length属性

    动画方法animate() 的参数

    参数一:要改变的样式属性,写成字典的形式

    参数二:动画持续的时间,单位是毫秒,默认是400毫秒,定义时不写单位

    参数三:动画曲线,有 swing 缓冲运动   linear  匀速运动

    参数四:回调函数

    Jquery特殊效果 

    fadeOut() 淡出
    fadeToggle() 切换淡入淡出
    hide() 隐藏元素
    show() 显示元素
    toggle() 切换元素的可见状态
    slideDown() 向下展开
    slideUp() 向上卷起
    slideToggle() 依次展开或卷起某个元素

    jquery对象的方法会在执行完后返回这个jquery对象,所有jquery对象的方法可以连起来写:

    $('#div1') // id为div1的元素
    .children('ul') //该元素下面的ul子元素
    .slideDown('fast') //高度从零变到实际高度来显示ul元素
    .parent()  //跳到ul的父元素,也就是id为div1的元素
    .siblings()  //跳到div1元素平级的所有兄弟元素
    .children('ul') //这些兄弟元素中的ul子元素
    .slideUp('fast');  //高度实际高度变换到零来隐藏ul元素


    jquery属性
    html() 取出或设置html内容
    prop() 取出或设置某个属性的值

    jquery事件函数列表:

    blur() 元素失去焦点
    focus() 元素获得焦点
    click() 鼠标单击
    mouseover() 鼠标进入(进入子元素也触发)
    mouseout() 鼠标离开(离开子元素也触发)
    mouseenter() 鼠标进入(进入子元素不触发)
    mouseleave() 鼠标离开(离开子元素不触发)
    hover() 同时为mouseenter和mouseleave事件指定处理函数
    ready() DOM加载完成
    submit() 用户递交表单

    正则表达式的写法:
    var re=new RegExp('规则', '可选参数');
    var re=/规则/参数;

    规则中的字符 
    1)普通字符匹配:
    如:/a/ 匹配字符 ‘a’,/a,b/ 匹配字符 ‘a,b’

    2)转义字符匹配:
    d 匹配一个数字,即0-9
    D 匹配一个非数字,即除了0-9
    w 匹配一个单词字符(字母、数字、下划线)
    W 匹配任何非单词字符。等价于[^A-Za-z0-9_]
    s 匹配一个空白符
    S 匹配一个非空白符
     匹配单词边界
    B 匹配非单词边界
    . 匹配一个任意字符

    量词:对左边的匹配字符定义个数 

    ? 出现零次或一次(最多出现一次)
    + 出现一次或多次(至少出现一次)
    * 出现零次或多次(任意次)
    {n} 出现n次
    {n,m} 出现n到m次
    {n,} 至少出现n次

    任意一个或者范围 
    [abc123] : 匹配‘abc123’中的任意一个字符
    [a-z0-9] : 匹配a到z或者0到9中的任意一个字符

    限制开头结尾 
    ^ 以紧挨的元素开头
    $ 以紧挨的元素结尾

    修饰参数:
    g: global,全文搜索,默认搜索到第一个结果接停止
    i: ingore case,忽略大小写,默认大小写敏感

    常用函数 
    test
    用法:正则.test(字符串) 匹配成功,就返回真,否则就返回假

    正则默认规则 
    匹配成功就结束,不会继续匹配,区分大小写

    事件冒泡:在一个对象触发某类事件(比如click事件),如果点击此对象触发事件,不仅此对象被触发,父级也会被触发事件,一级级向上传,直至传到document结束

    阻止事件冒泡

    // event.stopPropagation();
    // event.preventDefault();
    
    // 合并写法:
    return false;

    事件委托:就是利用冒泡的原理,把事件加到父级上,通过判断事件来源的子集,执行相应的操作,事件委托首先可以极大减少事件绑定次数,提高性能;其次可以让新加入的子元素也可以拥有相同的操作。

    事件委托优点:极大的减少了绑定事件的次数,提高性能,其次让新加入的元素也可以拥有相同的操作

    写法: $ul.delegate(‘li’, ‘click’, function(){   这里的$(this)指的是当前冒泡的子级   })

    Dom元素节点操作指的是改变html的标签结构,它有两种情况:
    1、移动现有标签的位置
    2、将新创建的标签插入到现有的标签中

    创建新标签

    var $div = $('<div>'); //创建一个空的div
    var $div2 = $('<div>这是一个div元素</div>');
    

    移动或者插入标签的方法 
    1、append()和appendTo():在现存元素的内部,从后面放入元素

    2、prepend()和prependTo():在现存元素的内部,从前面放入元素

    3、after()和insertAfter():在现存元素的外部,从后面放入元素

    4、before()和insertBefore():在现存元素的外部,从前面放入元素

    删除标签

    $('#div1').remove();

    javascript中的对象,可以理解成是一个键值对的集合,键是调用每个值的名称,值可以是基本变量,还可以是函数和对象。

     创建javascript对象有两种方法,一种是通过顶级Object类来实例化一个对象,然后在对象上面添加属性和方法:

    创建对象方法:var person = new Object()

    对象直接量的方式:var person2 = {name:"summer",age:18}
    调用属性和方法:
    alert(person2.age);
    person2.sayName();


    json
    类似于javascript对象的一种数据格式
    注意:键名和值都需要写双引号,数字可以不写
    特点:可以和对象的一样用点的方式调用
    写法:{“name”:"summer","age":18}
    数组的写法: [{“name”:"summer","age":18}]
    嵌套的写法:{“name”:"summer","age":18,person:{“name”:"summer","age":18}}

    ajax需要在服务器的环境下运行
    常用参数:
    1、url 请求地址
    2、type 请求方式,默认是'GET',常用的还有'POST'
    3、dataType 设置返回的数据格式,常用的是'json'格式,也可以设置为'html'
    4、data 设置发送给服务器的数据
    5、success 设置请求成功后的回调函数
    6、error 设置请求失败后的回调函数
    7、async 设置是否异步,默认值是'true',表示异步
     
     
     
  • 相关阅读:
    python 希尔排序
    python 选择排序
    python 插入排序
    怎么根据返回数量,来渲染点赞星星的个数变高量?
    avalon $computed不起作用?
    移动端点击事件兼容问题,在pc端可以点,在手机上不可以点
    移动端弹出遮罩层禁止页面滚动,遮罩里面的框允许滚动如何实现。
    移动端,如何禁止弹窗下面内容滚动/页面滚动
    avalon数据已更新,视图未更新的bug修复
    Python 导入分部分项前的 数据处理
  • 原文地址:https://www.cnblogs.com/Jack666/p/9420438.html
Copyright © 2020-2023  润新知