Jq

###jQuery

  • 什么是jQuery
    1. 是一个JavaScript框架
    2. 让程序员写的更少 实现的更多
    3. 简化原生js代码
    4. jQuery本身就是通过js语言所写的一个js文件
    5. 可以像css一样通过选择器查找元素
      js: var div = document.getElementById(“id”);
      jq: $("#id")
    6. 可以像css一样批量添加样式
      js: var imgs = document.getElementsByTagName(“img”);
      for(var i=0;i<imgs.length;i++){
      imgs[i].style.display=“none”;
      }
      jq: $(“img”).css(“display”,“none”);
    7. 可以解决部分兼容性问题
      ####引入jQuery
  • 由于jq本身就是一个js文件 所以引入方式和一个普通的js文件一样通过Script标签的src属性引入
    ####js对象和jq对象互相转换
  1. js转jq
    var jq = $(js);
  2. jq转js
    var js = jq[0];
    ###选择器
    ####基础选择器
  3. 标签名选择器 $(“div”)
  4. id选择器 $("#id")
  5. 类选择器 $(".class")
  6. 分组选择器 $(“div,#id,.class”)
  7. 任意元素选择器 $("*")
    ####层级选择器
  8. $(“div span”) 匹配div里面所有的span
  9. $(“div>span”) 匹配div里面span子元素
  10. $(“div+span”) 匹配div的弟弟span元素
  11. $(“div~span”) 匹配div的弟弟们span元素
  • 和层级相关的方法
    1. 匹配元素的所有兄弟元素
      $("#abc").siblings(); //得到id为abc元素的所有兄弟
      $("#abc").siblings(“div”); //得到id为abc元素的所有div兄弟
    2. 匹配元素的哥哥
      $("#abc").prev(); 得到元素的哥哥元素
      $("#abc").prev(“p”); 得到元素的哥哥p元素
    3. 匹配元素的哥哥们
      $("#abc").prevAll(); 得到元素的所有哥哥元素
      $("#abc").prevAll(“span”); 得到元素的所有哥哥元素
    4. 匹配元素的弟弟
      $("#abc").next(); 得到元素的弟弟元素
      $("#abc").next(“p”); 得到元素的弟弟p元素
    5. 匹配元素的弟弟们
      $("#abc").nextAll(); 得到元素的弟弟们元素
      $("#abc").nextAll(“p”); 得到元素的弟弟们p元素
      ####过滤选择器
  1. $(“div:first”) 匹配所有div中的第一个div元素
  2. $(“div:last”) 匹配所有div中最后一个div元素
  3. $(“div:even”) 匹配所有div中下标为偶数的div元素
  4. $(“div:odd”) 匹配所有div中下标为奇数的div元素
  5. $(“div:eq(n)”) 匹配所有div中下标值为n的div元素
  6. $(“div:lt(n)”) 匹配所有div中下标值小于n的div元素
  7. $(“div:gt(n)”) 匹配所有div中下标值大于n的div元素
  8. $(“div:not(.abc)”) 匹配所有div中class值不为abc
    ####内容选择器
  9. $(“div:has§”) 匹配包含p子元素的div
  10. $(“div:empty”) 匹配空的div
  11. $(“div:parent”) 匹配非空的div
  12. $(“div:contains(‘xxx’)”) 匹配包含xxx文本的div
    ####可见选择器
  13. $(“div:hidden”) 匹配所有隐藏的div
  14. $(“div:visible”) 匹配所有可见的div
  • 和隐藏显示相关的方法
    $("#abc").hide(); 隐藏
    $("#abc").show(); 显示
    $("#abc").toggle(); 隐藏、显示切换
    ####属性选择器
  1. $(“div[id]”) 匹配包含id属性的div元素
  2. $(“div[id=‘xxx’]”) 匹配id值为xxx 的div元素
  3. $(“div[id!=‘xxx’]”) 匹配id值不为xxx的div元素
    ####子元素选择器
  4. $(“div:first-child”) 匹配是div元素,并且是第一个子元素
  5. $(“div:last-child”) 匹配是div元素,并且是最后一个子元素
  6. $(“div:nth-child(n)”) 匹配是div元素,并且是第n个子元素 从1开始
    ####表单选择器
  7. $(":input") 匹配form表单中所有的控件
  8. $(":password") 匹配所有密码框
  9. $(":radio") 匹配所有单选
  10. $(":checkbox") 匹配所有多选
  11. $(":checked") 匹配所有选中的单选、多选、下拉选
  12. $(“input:checked”) 匹配所有选中的单选和多选
  13. $(":selected") 匹配所有选中的下拉选

###选择器回顾

  • 基础选择器
  1. 标签名 $(“div”)
  2. id #id
  3. 类 .class
  4. 分组 div,#id,.class
  5. 任意元素 *
  • 层级
  1. div span div里面所有span
  2. div>span div里面所有span子元素
  3. div+span div的弟弟span元素
  4. div~span div的弟弟们span元素
  5. .siblings(“div”) 所有div兄弟
  6. .next() 弟弟元素
  7. .nextAll() 弟弟们元素
  8. .prev() 哥哥元素
  9. .prevAll() 哥哥们元素
  • 过滤选择器
  1. div:first 第一个div
  2. div:last 最后一个div
  3. div:even 偶数
  4. div:odd 奇数
  5. div:eq(n) 第n个
  6. div:lt(n) 下标小于n
  7. div:gt(n) 下标大于n
  8. div:not(.abc) class值不是abc的div
  • 内容选择器
  1. div:has§ 包含p子元素
  2. div:empty 空的div
  3. div:parent 非空div
  4. div:contains(‘xxx’) 包含xxx文本的div
  • 可见选择器
  1. div:hidden 匹配所有隐藏div
  2. div:visible 匹配所有显示div
  3. .show() 显示
  4. .hide() 隐藏
  5. .toggle() 切换显示状态
  • 属性选择器
  1. div[id] 包含id属性
  2. div[id=‘abc’] id等于abc的div
  3. div[id!=‘abc’] id不等于abc的div
  • 子元素选择器
  1. div:first-child 第一个div子元素
  2. div:last-child 最后一个 div子元素
  3. div:nth-child(n) 第n个 div 子元素
  • 表单选择器
  1. :input 匹配所有控件
  2. :password 密码框
  3. :radio 单选
  4. :checkbox 多选
  5. :checked 匹配选中的 单选多选下拉选
  6. input:checked 匹配选中的单选和多选
  7. :selected 匹配所有选中的下拉选
    ###创建和添加元素
  8. 创建元素
    var d = $(“
    abc
    ”);
  9. 添加元素
    父元素.append(d); //添加到最后面
    父元素.prepend(d);//添加到最前面
  10. 插入元素
    $("#abc").before(新元素);
    $("#abc").after(新元素);
  11. 删除元素
    $("#abc").remove();
    ####获取和修改元素的文本内容
    $("#abc").text();
    $("#abc").text(“xxx”);
    ####获取和修改元素的html内容
    $("#abc").html(); 获取
    $("#abc").html(“

    abc

    ”);
    ####获取和修改元素的css样式
    $("#abc").css(“left”); 获取left的属性值
    $("#abc").css(“left”,“100px”); 赋值
    $("#abc").css({“width”:“100px”,“height”:“200px”});
    ####获取和修改元素的属性
    $("#abc").attr(“class”); 获取
    $("#abc").attr(“class”,“c1”); 赋值

###获取元素的子元素和父元素
87. 元素对象.children()
88. 元素对象.parent()

###课程回顾:
89. jQuery js框架 写的更少实现的更多
90. 页面加载完成事件 $(function(){ })
91. js->jq var jq = $(js);
92. jq-js var js = jq[0];
93. 选择器

  • 基础选择器 div #id .class div,#id *
  • 层级 div span div>span div+span div~span .siblings() .prev() .prevAll() .next() .nextAll()
  • 过滤选择器 div:first/last/even/odd/eq(n)/lt(n)/gt(n)/not(xxx)
  • 内容选择器 div:has§/empty/parent/contains(‘xxx’)
  • 可见选择器 div:hidden/visible .show() .hide() .toggle()
  • 属性选择器 div[id!=“xxx”]
  • 子元素选择器 div:first-child/last-child/nth-child(n)
  • 表单选择器 :input :password :radio :checkbox :checked input:checked :selected
  1. 创建元素 var d = $("
    ");
  2. 添加 prepend() append()
  3. 插入 兄弟元素.before() 兄弟元素.after()
  4. 删除 元素.remove();
  5. 文本相关 .text(“xxx”);
  6. html相关 .html(“xxxxxx”);
  7. css相关 .css(“color”,“red”) .css({"":"","":""})
  8. 属性相关 .attr(“id”,“xxx”);
  9. 元素的子元素们 .children()
  10. 元素的上级元素 .parent();

###jQuery事件相关

  1. 常见事件
  • 鼠标事件: 点击事件 click 鼠标移入事件mouseover 鼠标移出mouseout 鼠标按下mousedown 鼠标抬起mouseup 鼠标移动mousemove
  • 键盘事件: 键盘按下 keydown 键盘抬起 keyup
  • 状态改变事件: 页面加载完成$(function(){}) 获取焦点focus 失去焦点blur 表单提交submit 值改变change 窗口尺寸改变resize
  1. 事件模拟
    元素对象.trigger(“事件名”);

  2. 鼠标移入移出事件合并
    元素对象.hover(鼠标移入执行方法,鼠标移出执行方法);
    ###动画相关
    if(this.value==“隐藏”){
    $(“img”).hide(3000,function(){
    alert(‘动画做完了’);
    });
    }else if(this.value==“显示”){
    $(“img”).show(2000,function(){
    alert(‘xxx’);
    });
    }else if(this.value==“淡出”){
    $(“img”).fadeOut(1000);
    }else if(this.value==“淡入”){
    $(“img”).fadeIn(2000);
    }else if(this.value==“上滑”){
    $(“img”).slideUp(2000);
    }else if(this.value==“下滑”){
    $(“img”).slideDown(2000);
    }else{//自定义
    $(“img”).animate({“left”:“200px”},1000)
    .animate({“top”:“200px”},1000)
    .animate({“left”:“0px”},1000)
    .animate({“top”:“0px”},1000)
    .animate({“width”:“200px”},1000)
    .animate({“width”:“100px”},1000)
    .fadeOut(3000,function(){
    $(“img”).remove();
    });
    }

     });
    

    });

###jQuery课程回顾

  1. 写的更少 实现的更多
  2. js-jq var jq = $(js)
  3. jq-js var js = jq[0]
  4. 选择器
  • 基础选择器 div #id .class div,#id *
  • 层级选择器 div span div>span div+span div~span
    .siblings() .prev() .prevAll() .next() .nextAll()
  • 过滤选择器 div:first/last/even/odd/eq()/lt()/gt()/not()
  • 内容选择器 div:has§/empty/parent/contains(‘xxx’)
  • 可见选择器 div:hidden/visible .show() .hide() .toggle()
  • 属性选择器 div[id!=‘xxx’]
  • 子元素选择器 div:first-child/last-child/nth-child(n)
  • 表单选择器 :input :radio :password :checkbox :checked input:checked :selected
  1. 创建元素 var d = $("
    ");
  2. 添加 .prepend() .append()
  3. 插入 兄弟.before() 兄弟.after()
  4. 删除 元素.remove();
  5. 文本相关 .text()
  6. html相关 .html()
  7. 样式 .css(“color”) .css(“color”,“red”); .css({"":"","":""})
  8. 属性 .attr(“属性名”,“值”)
  9. 上级元素 parent() 子元素们 .children()
  10. 事件
  • 去掉on
  • 事件模拟 元素.trigger(“事件名”);
  • 移入移出合并 元素.hover(function(){},function(){});
  1. 动画
    隐藏hide(3000) 显示 show() 淡出fadeOut() 淡入fadeIn() 上滑slideUp() 下滑slideDown() 自定义animate({},时间);

####雪花作业

  1. 雪花尺寸随机20-40
  2. 雪花越小移动速度越快
  3. 雪花落地后一秒融化
    (淡出 淡出后删除)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

程序员西柚柚

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值