• day47 jquery


    原生的js对象(标签对象)与jQuery对象的相互转换

    $() 查找的都是一个数组的形式(内部才是一个个的原生js对象)

    原生的js对象如何转成jQuery对象,

    $(原生js对象)

    查找标签

    基本筛选器

    :first	//第一个
    :last	//最后一个
    :eq(index)	//索引等于index的那个元素
    :even	//匹配索引索引值为偶数的元素,从0开始计数
    :odd	//匹配索引值为奇数的元素,从0开始
    :gt(index)	//匹配索引大于给定索引值的元素
    :lt(index)	//匹配索引小于给定索引值的元素
    :not(元素选择器)	//移除所有满足not条件的标签
    :has(元素选择器)	//选取所有包含一个或者多个标签在其内的标签(指的是从后代元素找)
    
    $('ul li:first')
    $('ul li:last')
    $('ul li:eq(1)')
    $('ul li:even')
    $('ul li:odd')
    $('ul li:gt(3)')
    $('ul li:lt(3)')
    $('ul li:not(".c1")')
    $('ul:has(".c1")')
    

    属性选择器

    [attribute]	
    [attribute=value]
    [attribute!=value]
    obj[attribute]
    
    $('[username]')
    $('[username="jason"]')
    $('span[username="jason"]')
    

    表单筛选器

    :text
    :password
    :file
    :radio
    :checkbox
    :submit
    :reset
    :button
    
    $('[type="text"]')
    $('[type="password"]')
    $(':text')  //指适用于表单  表单筛选器  省略了type
    $(':password')
    $(':file')
    $(':button')
    $(':checked'))	//不仅会找到input里checkbox的默认 还会找到select里option的默认 
    <!--novalidate取消前端给你做的校验功能:详见 django forms组件-->
    

    筛选器方法

    下一个元素

    $('#id').next() //下一个
    $('#id').nextAll()	//下面所有
    $('#id').nextUntil('#i2')	//下面...直到..为止
    
    $('span')
    var $panEle=$('span')[2]
    $($panEle).next()
    $($panEle).nextAll()
    $($panEle).nextUntil('#d2')//不包含until里面的值
    

    上一个元素(同一级别的)

    $('#id').prev()	//上一个
    $('#id').prevAll()	//上面所有
    $('#id').prevUntil()	//上面...直到。。为止
    

    父亲元素

    $('#id').parent()	//父亲
    $('#id').parents()	//查找当前元素的所有父辈元素
    $('#id').parentsUntil()	//查找当前元素的所有的父辈元素,直到遇到匹配的那个元素为止
    

    儿子和兄弟元素

    $('#id').children()	//儿子们
    $('#id').siblings()	//兄弟们
    

    查找 搜索所有与指定表达式匹配的元素。这个函数是找出正在处理的元素的后代元素的好方法

    $('div').find('p')  //等价于 $('div p') 找的是后代
    

    筛选 筛选出与指定表达式匹配的元素集合。这个方法用于缩小匹配范围。用个逗号隔开多个表达式出有出

    $('div').filter('c1')	//从结果集中过滤c1样式类的	等价于$('div.c1')
    

    补充:

    .first()	//获取匹配的第一个元素
    .last()		//获取匹配的最后一个元素
    .not()		//从匹配元素的集合中删除与指定表达式匹配的元素
    .has()		//保留包含特定后代的元素,去掉那些不含有指定后代的元素
    .eq()		//索引值等于指定值的元素
    
    $('div span').first() 等价  $('div span:first')
    

    操作标签

    样式操作

    样式类

    addClass()	//添加指定的css类名
    removeClass()	//移除指定的css类名
    hasClass()		//判断样式存不存在
    toggleClass()	//切换css类名,如果有就移除,没有就添加
    
    $('div').removeClass('bg_red')
    $('div').addClass('bg_red')
    $('div').hasClass('bg_red')
    $('div').toggleClass('bg_red')
    
    

    css

    css('color','red') 	//DOM操作:tag.style.color='red'
    
    $("p").css("color", "red"); //将所有p标签的字体设置为红色
    

    位置操作

    offset()	//获取匹配严肃在当前窗口的相对偏移或设置元素位置
    position()	//获取匹配元素相对父元素的偏移
    scrollTop()		//获取匹配元素相对滚条顶部的偏移
    srcollLeft()	//获取匹配元素相对滚动条左侧的偏移
    

    尺寸

    height()	//文本
    width()
    innerHeight()	//文本+内部
    innerWidth()
    outerHeight()	//文本+内部+边框
    outerWidth()
    

    文本操作

    HTML代码

    html()	//取得第一个匹配元素的html内容
    html(val)	//设置所有匹配元素的Html内容
    

    文本值

    text()	//取得所有匹配元素的内容
    text(val)	//设置所有匹配元素的内容
    

    val()	//取得第一个匹配元素的当前值
    val(val)	//设置所有匹配元素的值
    val([val1,val2])	//设置多选的CheckBox,多选select的值
    
    $('div').text()    //不加参数就是获取,加了参数就是赋值
    $('div').html()
    $('div').text('好痛')
    $('div').html('<h1>好痛</h1>')
    $('input').val()
    $('input').val('哈哈哈')
    

    属性操作

    用于ID等或自定义属性:

    attr(attrName)	//返回第一个匹配元素的属性值
    attr(attrName,attrValue)	//为所有匹配元素设置一个属性值
    attr({k:v,k:v})	//为所有匹配元素设置多个属性值
    removeAttr()	//从每个匹配的元素中删除一个属性
    

    用于CheckBox和radio

    注意:我们在处理checkbox和radio的时候尽量使用特定的prop(),不要使用attr("checked", "checked")。

    prop()	//获取属性
    removeProp()	//移除属性
    
    $('p').attr('id')
    $('p').attr('username','jason')
    $('p').attr({'password':123,'hobby':'study'})
    $('p').removeAttr('hobby')
    $('input').first().attr('checked','checked')
    $('input').first().prop('checked','checked')
    $('input').first().prop('checked',false)
    

    总结:对于标签上能看得到的属性和自定义属性都用attr

    对于返回布尔值比如CheckBox radio option是否选中都用prop

    文档处理

    添加到指定元素内部的后面

    $(A).append(B)	//把B追加到A
    $(A).appendTo(B)	//把A追加到B
    

    添加到指定元素内部的前面

    $(A).prepend(B)	//把B前置到A
    $(A).prependTo(B)	//把A前置到B
    

    添加到指定元素外部的后面

    $(A).after(B)	//把B放到A的后面
    $(A).insertAfter(B)	//把A方法B后面
    

    添加到指定元素外部的前面

    $(A).before(B)	//把B放到A的前面
    $(A).insertBefore(B)	//把A放到B的前面
    

    移除和清空元素

    remove()	//从DOM中删除所有匹配的元素
    empty()		//删除匹配的元素集合所有的子节点
    

    替换

    replaceWith()
    replaceAll()
    

    克隆

    clone() //默认克隆的没有事件  参数为true就可以了
    

    事件

    常用事件

    click(function(){})
    hover(function(){})
    blur(function(){})
    focus(function(){})
    change(function(){})
    keyup(function(){})
    

    事件绑定

    第一种:
    $(选择器).事件名(function(){
        事件代码
    })
    第二种:最广
    $(选择器).on('事件名',function(){
        事件代码
    })
    

    阻止后续事件执行

    return fslse;//常见阻止表单提交等
    e.preventDefault()
    

    阻止事件冒泡

    e.stopPropagation()
    

    页面载入

    第一种:
    $(document).ready(function(){
        代码
    })
    第二种:
    $(function(){
        代码
    })
    麻烦死了 直接写在body最下面
    

    事件委托

    事件委托是通过事件冒泡原理,利用父标签去捕获子标签的事件

    $('body').on('click','button',function () {
             alert(123)
         })
    
    $('ul li:first')
    $('div span:not('.c1')') 条件
    $(div:has('.c1'))
    $('[username]')
    $('[usename="jason"]')
    $('span[usename="jason"]')
    <form action="" novalidate  entype></form>
    novalidate 取消前端给你做的校验功能
    
    $(':text')  指适用于表单  表单筛选器  省略了type
    
    bug:$(':checked')会找到select checkbox的默认 
    $('unout:checked')
    
  • 相关阅读:
    MXNet--DMLC-Core代码解读与宏
    mxnet的训练过程——从python到C++
    L1正则化及其推导
    mshadow的原理--MXNet
    A-Softmax的总结及与L-Softmax的对比——SphereFace
    天猫-淘宝年货精选,内部特供,最高折扣,最优质量
    get_template_part() 函数详解备忘(转)
    (转)WordPress的主查询函数-query_posts()
    深度剖析WordPress主题结构(转)
    Science上发表的超赞聚类算法(转)
  • 原文地址:https://www.cnblogs.com/zqfzqf/p/11893142.html
Copyright © 2020-2023  润新知