jQuery基础知识篇一

javasciprt库
封装了很多js函数的文件夹
常见的javascript库:
jQuery
Prototype
YUI
Dojo
Ext JS
移动端的zepto
jQuery概念:
javascript query查询
把js中的DOM操作做了封装,我们可以快速查询使用里面的功能
jQuery的基本使用:
jQuery的入口函数:
$(function(){
…//此处是DOM加载完成的入口
});
( d o c u m e n t ) . r e a d y ( f u n c t i o n ( ) . . . / / 此 处 是 页 面 D O M 加 载 完 成 的 入 口 ) 相 当 于 D O M C o n t e n t L o a d e d 不 必 等 j s 文 件 、 c s s 文 件 、 图 片 加 载 完 毕 j Q u e r y 的 顶 级 对 象 (document).ready(function(){ ...//此处是页面DOM加载完成的入口 }) 相当于DOMContentLoaded 不必等js文件、css文件、图片加载完毕 jQuery的顶级对象 (document).ready(function()...//DOM)DOMContentLoadedjscssjQuery(jQuery的另外的名字)
( ′ d i v ′ ) . h i d e ( ) j Q u e r y ( ′ d i v ′ ) . h i d e ( ) j Q u e r y 对 象 和 D O M 对 象 : 1. D O M 对 象 : 用 原 生 j s 获 取 过 来 的 对 象 就 是 D O M 对 象 2. j Q u e r y 对 象 : 用 j Q u e r y 方 式 获 取 过 来 的 对 象 就 是 j Q u e r y 对 象 。 本 质 : 通 过 ('div').hide() jQuery('div').hide() jQuery对象和DOM对象: 1.DOM对象:用原生js获取过来的对象就是DOM对象 2.jQuery对象:用jQuery方式获取过来的对象就是jQuery对象。本质:通过 (div).hide()jQuery(div).hide()jQueryDOM1.DOMjsDOM2.jQueryjQueryjQuery把DOM元素进行了包装
3.jQuery对象只能使用jQuery方法,DOM对象则使用原生的javascript属性和方法,不能混用
$(‘div’);
$(‘div’).style.display=‘none’;(x)jQuery对象只能使用jQuery方法,不能使用原生的属性和方法

jQuery对象和DOM对象之间是可以相互转换的:
1.把DOM对象转换成jQuery对象:

静音的意思
1)直接获取视频得到的就是jQuery对象
( ′ v i d e o ′ ) ; 2 ) 我 们 已 经 使 用 原 生 的 j s , 获 取 过 来 j Q u e r y 对 象 v a r m y v i d e o = d o c u m e n t . q u e r y S e l e c t o r ( ′ v i d e o ′ ) ; / / ('video'); 2)我们已经使用原生的js,获取过来jQuery对象 var myvideo=document.querySelector('video'); // (video);2使jsjQueryvarmyvideo=document.querySelector(video);//(myvideo).play();错误,jq里面没有这个方法
2.jQuery对象转换为DOM对象
myvideo.play();//谷歌浏览器禁用自动播放功能,其他浏览器可以,加上muted就可以了
1)$(‘div’)[index] index是索引号
( m y v i d e o ) [ 0 ] . p l a y ( ) ; 2 ) (myvideo)[0].play(); 2) (myvideo)[0].play();2(‘div’).get(index) index是索引号
$(myvideo).get(0).play()
jQuery常用API
jQuery选择器:
$(“选择器”);//里面选择器直接写CSS选择器即可,但是要加引号
ID选择器 $("#id") 获取指定ID的元素
全选选择器 $(’*’) 匹配所有元素
类选择器 $(".class") 获取同一类class的元素
标签选择器 $(“div”) 获取同一类标签的所有元素
并集选择器 $(“div,p,li”) 选取多个元素
交集选择器 $(“li.current”) 交集元素
jQuery层级选择器:
子代选择器 $(“ul>li”); 使用>号,获取亲儿子层级的元素;注意,并不会获取孙子层级的元素
后代选择器 $(“ul li”); 使用空格,代表后代选择器,获取ul下的所有元素,包括孙子等
jQuery设置样式:
$(“div”).css(‘属性’,‘值’)
给div(有四个)设置为粉色
$(“div”).css(“background”,“pink”);//4个div都改了颜色
隐式迭代:遍历内部的DOM元素(为数组形式存储)的过程
把匹配的所有元素内部进行遍历循环,给每一个元素添加css这个方法
jQuery筛选选择器:
语法 用法 描述
:first $(‘li:first’) 获取第一个li元素
:last $(‘li:last’) 获取最后一个li元素
:eq(index) $(“li:eq(2)”) 获取到的li元素中,选择索引号为2的元素,索引号index从0开始
:odd $(“li:odd”) 获取到的元素中,选择索引号为奇数的元素
:even $(“li:even”) 获取到的li元素中,选择索引号为偶数的元素
jQuery筛选方法:
语法 用法 说明
parent() $(“li”).parent(); 查找父级
children(selector) ( " u l " ) . c h i l d r e n ( " l i " ) 相 当 于 ("ul").children("li") 相当于 ("ul").children("li")(“ul>li”),最近一级(亲儿子)
find(selector) ( " u l " ) . f i n d ( " l i " ) ; 相 当 于 ("ul").find("li"); 相当于 ("ul").find("li");(“ul li”)后代选择器
siblings(selector) $(".first").siblings(“li”); 查找兄弟节点,不包括自己本身
nextAll([exper]) $(".first").nextAll() 查找当前元素之后所有的同辈元素
prevtAll([exper]) $(".last").prevtAll() 查找当前元素之前所有的同辈元素
hasClass(class) $(‘div’).hasClass(“protected”) 检查当前的元素是否含有某个特定的类,如果有,则返回true
eq(index) ( " l i " ) . e q ( 2 ) ; 相 当 于 ("li").eq(2); 相当于 ("li").eq(2);(“li:eq(2)”),index从0开始
新浪下拉菜单案例:

判断是否有某个类名:
排他思想:
$(function(){
$(“button”).click(function(){
$(this).css(“background”,“pink”);
KaTeX parse error: Expected 'EOF', got '}' at position 49: …ckground",""); }̲); }) 淘宝服饰精品案例:…(this).index()
$(function(){
KaTeX parse error: Expected 'EOF', got '#' at position 3: ("#̲left li").mouse…(this).index();
console.log(index);
$("#content div").eq(index).show();
$("#content div").eq(index).siblings().hide();
});
})
jQuery样式操作:
1.参数只写属性名,则是返回属性值
$(this).css(“color”);
2.参数是属性名,属性值,逗号分隔,是设置一组样式,属性必须加引号,值如果是数字可以不用跟单位和引号
$(this).css(“color”,“red”);
3.参数可以是对象形式、方便设置多组样式。属性名和属性值用冒号隔开,属性可以不用加引号
$(this).css({“color”:“white”,“font-size”:“20px”});
$(“div”).css({
width:400,
height:400,
backgroundColor:“pink”//符合属性,驼峰命名法
})
设置类样式方法:
$(“div”).addClass(“current”);//操作类里面的参数不要加点
$(“div”).removeClass(“current”);
切换类:
$(“div”).toggleClass(“current”);
tab栏切换:
$(function(){
$(".tab_list li").click(function(){
( t h i s ) . a d d C l a s s ( " c u r r e n t " ) . s i b l i n g s ( ) . r e m o v e C l a s s ( " c u r r e n t " ) ; v a r i n d e x = (this).addClass("current").siblings().removeClass("current"); var index= (this).addClass("current").siblings().removeClass("current");varindex=(this).index();
console.log(index);
$(".tab_con .item").eq(index).show().siblings().hide();
});
})
类操作与className的区别:
className覆盖原先的类名
类操作不会覆盖原先的类名
jQuery效果:
显示隐藏:
show([speed,[easing],[fn]])
speed:三种预定速度之一的字符串(“slow”,“normal”,or “fast”)或表示动画时长的毫秒数值(如:1000).
easing:切换效果(swing,linear)
fn:回调函数
hide([speed,[easing],[fn]])
toggle([speed,[easing],[fn]])
//一般情况下都不加参数
滑动:
slideDown([speed,[easing],[fn]])
slideUp([speed,[easing],[fn]])
slideToggle([speed,[easing],[fn]])
淡入淡出:
fadeIn()
fadeOut()
fadeToggle()淡入淡出相互切换
fadeTo([speed],opacity,[easing],[fn])调整不透明度
必须写 透明度 切换效果 回调函数
* *
自定义动画:
animate(params,[speed},[easing],[fn])
{left:200,top:300,opacity:.4}
事件切换:
hover([over,]out)
over:鼠标移到元素上要触发的函数(相当于mouseenter)
out:鼠标移出元素要触发的函数(相当于mouseleave)
事件切换:
$(".nav>li").hover(function(){
$(this).children(“ul”).slideDown(200);
},function(){
$(this).children(“ul”).slideUp(200);
})
简化:hover()如果只写一个函数那么鼠标经过和鼠标离开都会触发
$(".nav>li").hover(function(){
$(this).children(“ul”).slideToggle();
});
动画队列及其停止排队的方法:
stop();
$(".nav>li").hover(function(){
//stop方法必须写在动画的前面
$(this).children(“ul”).stop().slideToggle();
});

王者荣耀手风琴案例:
$(function(){
$(".king li").mouseenter(function(){
$(this).stop().animate({
width:224
},200).find(".small").stop().fadeOut().siblings(".big").stop().fadeIn();
$(this).siblings(“li”).stop().antimate({
width:224
}).find(".small").fadeIn().siblings(".big").fadeOut();
})
})

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

想成为前端工程师滴小小白

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

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

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

打赏作者

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

抵扣说明:

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

余额充值