this === event.currentTarget    event.stopPropagation  阻止冒泡  http:www.css88.com

JQ和原生JS入口函数的区别:

  • 书写个数不同
    • 原生JS中入口函数只能出现一次,出现多次后会被层叠掉
    • JQ中可以随意使用,不会被层叠掉
  • 执行时机不同
    • 原生JS的入口函数在所有资源文件加载完成后执行。包括外部JS、外部CSS、页面文档、图片
    • JQ的入口函数在文档加载完后就执行,也就是在DOM树加载好后就可以直接操作DOM,不需要等所有外部元素加载完。(但是使用$(window).ready(function () {});可以实现等图片等元素加载完后执行入口函数的效果

JS和JQ的DOM相互转换

  • JS==>JQ
    • var jqdiv = $("jsdiv");  在$后加JS变量名就好
  • JQ==>JS
    • var jsdiv = JQdiv[0];  或者  div = JQdiv.get(0);  用[]或者get()传入索引值获取

选择器

  • 基本选择器:和CSS中差不多,有 ID选择器  类名选择器  标签选择器  通配符(*)选择器   获取方式也一样
  • 层级选择器: 子代选择器  后代选择器
    • 过滤选择器:   :eq(index)指定的元素  :odd获取奇数位的元素,得到的是偶数值  :even偶数位    用法:   $("li:eq(2)")
  • 筛选选择器: .find()从后代里找  .children()子代里找  .eq()用法和上边类似,写法有区别  .siblings()兄弟   .parent()父级

节点操作

  • 创建节点
    • $("<span></span>");  直接传带标签的内容
    • $("ul").html("<li>你好</li>");  通过父级元素调用html()来创建,若是html()不传任何内容,表示获取ul中的内容
  • 添加节点
    • append()  $("oldul").append(newli);
    • appendTo()   上面的反过来就是了
    • prepend()  在盒子的最前边添加  $("ul").prepend(newli);新添加的li成为第一个li
    • prependTo()  你猜猜怎么用
    • after()  $("li").after(newli);新添加的里li在旧的li之后  操作的是兄弟级的元素
    • before()  恩...
  • 删除节点
    • .html("")  传空字符,直接清空内容
    • .remove()  自杀式
  • 复制节点
    • .clone()  默认深复制调用者
posted on 2018-03-31 19:14  会搔耳朵的猫  阅读(113)  评论(0编辑  收藏  举报