JQuery_day02

正课:

  1. 查询:

  2. 修改:

  3. 按节点间关系查找

  4. 添加/删除/替换/克隆

  5. 事件绑定

  6. 查询:
    内容过滤:

  7. :contains(文本) 用元素的内容文本作为条件

  8. :has(selector) 选择包含符合条件的子元素的父元素

  9. :parent和:empty: 选择非空的或空的元素
    可见性过滤: :visible :hidden
    :hidden只能选择: display:none的和input type=hidden的
    属性过滤: 同CSS
    表单过滤:
    表单元素过滤:
    :input 查询所有表单元素: input select button textarea
    每种type都有专门的选择器:
    :text :password :checkbox :radio :file :submit …
    表单状态过滤:
    :enabled :disabled :checked :selected

  10. 修改:
    内容: 3种

    1. html片段: .html()
    2. 纯文本: .text()
    3. 表单元素的值: .val()
      属性: 3种
    4. HTML标准属性:
      $elem.attr(“属性名”[,“新值”])
      //getAttribute/setAttribute
      可以获得开始标签中的一切字符串类型的属性
    5. 状态属性:
      $elem.prop(“状态”[,bool])
      可以获得内存中可用.访问的所有属性
    6. 自定义扩展属性:
      $elem.attr()
      问题: .attr()和.prop()一次只能修改一个属性
      解决: .attr/prop({
      属性:值,
      … : …
      })
      样式:
      修改css属性: $elem.css(“css属性”[,新值])
      .style.css属性
      $elem.css({
      css属性:新值,
      … : …
      })
      福利: 数值类型的css属性,不再需要加px单位
      获取css属性: $elem.css(“css属性”)
      getComputedStyle()

用class批量管理样式:
.addClass(“class”)
.removeClass(“class”)
.hasClass(“class”)

.toggleClass(“class”)
相当于: if($btn.hasClass(“down”))
$btn.removeClass(“down”)
else
$btn.addClass(“down”)

  1. 按节点间关系查找:

  2. 父子关系:
    .parent()
    .children([“selector”]) 仅选择符合条件的直接子元素
    .find(“selector”) 可在所有后代中查找符合条件的直接子元素
    .children(":first-child") 仅选择直接子元素中第一个元素
    .children(":last-child") 仅选择直接子元素中最后一个元素

  3. 兄弟关系:
    .prev() 前一个
    .prevAll() 之前所有
    .next() 后一个
    .nextAll() 之后所有
    .siblings() 除自己之外所有

  4. 添加/删除/替换/克隆
    添加: 2步:

  5. 用$创建一个新元素: var e l e m = elem= elem=(“html片段”)

  6. 将新元素追加到DOM树
    p a r e n t . a p p e n d ( parent.append( parent.append(elem) 末尾追加
    e l e m . a p p e n d T o ( elem.appendTo( elem.appendTo(parent) return $elem
    p a r e n t . p r e p e n d ( parent.prepend( parent.prepend(elem) 开头插入
    e l e m . p r e p e n d T o ( elem.prependTo( elem.prependTo(parent) return $elem

c h i l d . b e f o r e ( child.before( child.before(elem) 将 e l e m 插 入 到 elem插入到 elemchild之前
e l e m . i n s e r t B e f o r e ( elem.insertBefore( elem.insertBefore(child)
c h i l d . a f t e r ( child.after( child.after(elem) 将 e l e m 插 入 到 elem插入到 elemchild之后
e l e m . i n s e r t A f t e r ( elem.insertAfter( elem.insertAfter(child)
删除: $elem.remove()
替换:
c h i l d . r e p l a c e W i t h ( child.replaceWith( child.replaceWith(elem)
$elem.replaceAll(“child”)
克隆: var n e w E l e m = newElem= newElem=elem.clone()
默认: .clone()是浅克隆,仅复制样式和属性,不复制行为
改为: .clone(true) 深克隆,即复制样式和属性,又复制行为

  1. 事件绑定:
  2. 普通绑定:
    .on(“事件名”,function(){ … }) <==> addEventListener()
    简写: .事件名(function(){ … })
  3. 利用冒泡:
    $parent.on(“事件名”,“selector”,function(){
    //this->e.target
    //执行操作
    })
  4. 移除事件绑定:
    .off(“事件名”,原处理函数) <==> removeEventListener()
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值