jQuery基础参考文档

jQuery:

Query  查询;

框架库:
JavaScript框架库:就是一个普通的js文件,封装了很多的函数,封装了很多兼容的代码;
jQuery是JavaScript框架库中的一种;
jQuery的好处:写的少,做的多,链式编程,隐式迭代等…;
jQuery可以解决js兼容的问题;

顶级对象:
jQuery,$; 点出来的是jQuery中方法;

DOM对象和jQuery对象(伪数组)可以互转:
* DOM对象转---->jQuery对象:
* $(DOM的对象)----->jQuery对象
* jQuery对象---->DOM对象:
* 1.
* KaTeX parse error: Expected 'EOF', got '#' at position 3: ("#̲btn")[0]---->DO…("#btn").get(0)—DOM对象

注意:jQuery中的this 要写成$(this);

//.val()方法—>获取按钮的value属性的值
//.val(“内容”);是设置按钮的value属性的值

$的四种用途:
1:入口函数;
2:把js原生对象转换为jQuery对象;
3:传入一个选择器字符串,获取页面的jQuery对象;
4:传入一个html的字符串,获取jQuery对象;

$(function () {} 是在HTML标签元素加载完后,就立即执行的,不等css的加载;(jQuery的入口函数);

选择器:
jQuery获取元素的方式:通过各种选择器来获取元素
* 1.根据id来获取—>id选择器 ---->$("#id的值");一个

    * 2.根据标签的名字来获取---标签选择器--->$("标签的名字");多个

    * 3.根据类样式的名字获取--->类选择器--->$(" . 类样式的名字");多个

    * 4.标签加类选择器 $("标签.类样式的名字 ");点前后不能加空格;

    * 5.多条件选择器 $(“标签的名字,标签的名字,标签的名字,.......”);

    * 6.层次选择器  
//获取的是div中所有的p标签元素
            //$("#dv p").
            //获取的是div中直接的子元素
            //$("#dv>p").
            //获取的是div后面的第一个p标签元素
            //$("#dv+p").
            //获取的是div后面所有直接的兄弟元素p标签元素
            //$("#dv~p").

常见的方法:

.text()方法,设置标签中间显示的文本内容,类似于innerText:
	如果小括号中写内容,就是设置文字内容;
	小括号什么也不写,表示的是获取这个元素中的文字内容;

.html()方法,设置标签中间显示其他标签及内容,类似于innerHTML:
	小括号中可以直接写标签的字符串内容,就是设置div中的元素内容
           		小括号中什么也没有,表示的时候获取div中的元素内容

.val()方法.设置input标签中value的值,类似于value:
	小括号中写内容就是设置元素的value属性;
           		小括号中什么也不写,获取元素的value属性的值;

.css()方法,.设置元素的样式,类似于style:
	1:该方法如果只是设置一个样式的属性和值,那么这个方法写两个参数,第一个参数是属性,第二个参数是值;中间用逗号隔开;css("backgroundColor","skyblue");
	2:可以直接写键值对的方式:
     	$("#dv").css({"width":"300px","height":"200px","backgroundColor":"yellow"});
	3:css("backgroundColor");一个参数的时候是获取属性的值;

筛选选择器:
:even 索引偶数 ;从0开始,用户看到的是奇数行;
:odd 索引奇数 ;从0开始,用户看到的是偶数行;
:selected; 选中的;

索引选择器:
获取ul中的索引为4的li标签元素:
$("#uu>li:eq(4)"). (“+index+”);
获取ul中的索引大于4的所有的li标签元素:
$("#uu>li:gt(4)").
获取ul中的索引小于4的所有的li标签元素:
$("#uu>li:lt(4)").
.children();获取直接子元素;

.show():展示;里面可以放数字,运动毫秒值;

.hide();隐藏;里面可以放数字,运动毫秒值;

.index();获取当前元素的索引;(“+index+”);变量转换

.siblings();获取其他兄弟元素;

opacity:透明度;

.find();针对当前的元素找里面一些其他的元素(直接找到);

操作类样式:
添加:
.addClass(“cls”);在addClass方法中类样式的名字前面没有点;
多个类样式的名字中间用空格隔开;

移除:
.removeClass(“cls”),移除一个元素的类样式;
.removeClass(),为空移除所有添加的样式;

检测元素是否应用了类样式:
	.hasClass();有返回值:true,false;

切换类样式:.toggleClass();
	$(function () {
		$("#btn").click(function () {
           			$("body").toggleClass("cls");//切换类样式
        			});
	}

链式编程(返回值必须是当前的对象):
对象.方法().方法().方法()…;

获取兄弟元素的方法:
.next();获取的是当前元素的下一个兄弟元素;

.nextAll();获取的是当前元素的后面的所有的兄弟元素;

.prev();获取的是当前元素的前一个兄弟元素;

.prevAll();获取的是当前元素的前面的所有的兄弟元素;

.siblings();获取的是当前元素的所有的兄弟元素(自己除外);

断链:对象调用方法,返回的不是当前的对象,再调用方法,调用不了;
解决断链—>恢复到断链之前的一个效果–修复断链;
.end():恢复到断链之前的效果;

.last():获取最后一个标签;也可以这样用$(“div>img:last”);
.first():获取第一个标签;
.remove();移除当前调用这个方法的元素—自杀;

动画:
.hide()方法中可以写参数:参数类型:1.数字类型,2字符串类型:
1:数字类型:1000表示的是毫秒 —1秒;
2:字符串类型: “slow” “normal” “fast”;
3:可以写回调函数;.hide(1000,function(){});这个函数方法是在所有动画完成之后执行的;

.show()方法中可以写参数:参数类型:1.数字类型,2字符串类型:
            	1:数字类型:1000表示的是毫秒  ---1秒;
            	2:字符串类型: "slow"  "normal"  "fast";
	3:可以写回调函数;.show(1000,function(){});这个函数方法是在所有动画完成之后执行的;

递归:arguments.callee相当于递归;

.slideUp()滑入
.slideDown()滑出
.slideToggle()切换
	方法中都可以写参数:
        			参数:可以写数字类型  1000毫秒---1秒;
        			参数:字符串:  slow   normal  fast;

.fadeIn()淡入
.fadeOut()淡出
.fadeToggle()切换
.fadeTo()透明度变化;里面两个参数,第一个是毫秒值,第二个是透明度;

animate方法:(目标css样式,时间,回调函数);
	参数:
            	* 1.是键值对---对象
            	* 2.时间---1000毫秒---1秒
            	* 3.匿名函数---回调函数

stop():停止当前的动画;

动态的创建元素:
1. $(“标签的代码”);
$(“百度”);
2. 对象.html(“标签的代码”); 直接书写就添加;
$("#dv").html(“

这是一个p标签

”);

添加元素:
把元素添加到div中,追加到最后(剪切效果):
$("#dv").append(Obj);
把元素添加到最前面:
$("#dv").prepend(Obj);
在当前元素的后面添加一个兄弟元素:
$("#dv").after(Obj);
在当前元素的前面添加一个兄弟元素:
KaTeX parse error: Expected 'EOF', got '#' at position 3: ("#̲dv").before(Obj…("#dv"));

清除元素:
//清空元素中的内容:KaTeX parse error: Expected 'EOF', got '#' at position 3: ("#̲dv").html(""); …("#dv").empty();
//移除元素自身—自杀:$("#dv").remove();

克隆元素:$("#").clone();复制了一个元素;

设置和和获取表单元素value:
获取表单的值 $().val();空为获取;
设置表单元素: $().val(“内容”);
下拉列表:
获取:
$().val( );返回的value的值,如果标签里没有value值,则返回的是option包含的文本;
设置:
$().val( );根据optionn的value属性的值,选中某个option;如果没有value值,括号里直接放option包含的文本;

自定义属性:
attr可以获取并设置标签的属性和值;用来操作标签属性和值的;
attr();可以写两个参数: 属性, 属性值;Obj.attr(“href”,“http://www.itcast.cn”);
attr();只写了一个参数,获取该元素的这个属性的值;

移除自定义属性:removeAttr(“”);
原生属性:
prop不能获取并设置标签的属性和值;
复选框:prop()可以真正的获取元素是否选中的状态;选中返回true,未选中返回false;
.prop(“checked”,false);让复选框不选,.prop(“checked”,true);让复选框选中;
.prop(“checked”);获取当前复选框的选中状态;

:checkbox :得到所有的复选框;
:checked:得到所有选中状态;

设置和获取元素的宽和高:
通过元素的css()方法可以获取元素的宽和高,但是都是字符串类型;
通过jQuery方法设置是数值类型:
$("#dv").width();获取宽的属性值;
$("#dv").height();获取高的属性值;
设置:参数可以是数字也可以是字符串;
$("#dv").width(width);
$("#dv").height(height);

位置操作:
获取left和top的值—>都是数字类型
//console.log(KaTeX parse error: Expected 'EOF', got '#' at position 3: ("#̲dv").offset().l…("#dv").offset().top);
设置:$("#dv").offset({“left”:200,“top”:200});

滚动距离:
	获取:.scrollTop();.scrollLeft();
	设置:.scrollTop(xx)	;.scrollLeft(xx);	

注册事件:
bind()方法可以为元素同时绑定多个事件;
.bind({“mouseout”:function(){},“click”:functopn(){}?;

delegate:可以父级元素里的子元素绑定事件(为当前不存在的子元素添加事件);
	* 参数:3个
            	* 1.要绑定事件的元素---p;
            	* 2.要绑定的事件的名字---click;
            	* 3.绑定事件的处理函数---匿名函数;
	 $("#dv").delegate("p","click",function () {});

on:两个参数:1事件的名字,2事件处理函数;
	 $("#btn").on("click",function () {});
       三个参数: 1,事件的名字, 2.要绑定事件的元素--p,3事件处理函数;
	on是父级元素调用,目的:为子级元素去绑定事件;
如果元素是动态添加的,那么非常推荐用on的方式为动态添加的元素绑定事件;
	$("#dv").on("click","p",function () {});

解绑事件:
off:
off()参数:要解绑的事件的名字;
$("#btn1").off(“click”);

unbind:
	$("#btn1").unbind("click");

undelegate:
       		$("#dv").undelegate("p","click");//解绑;

$("#dv").off("click","**");下面的代码是把子级元素的点击事件解绑了,父级元素的点击事件还存在;

$("#dv").off();  移除父级元素和子级元素的所有的事件;

如果说父级元素和子级元素都是通过正常的方式绑定事件,如果通过off解绑的时候,父级元素的事件解绑了,子级元素的事件没有解绑;
如果子级元素是通过父级元素调用delegate的方式绑定的事件,父级元素使用off方式解绑事件,这个时候父级元素和子级元素的相同的事件都会被解绑;

事件触发:
1:$("#btn1").click();

          	2: $("#btn1").trigger("click");

            3:$("#btn1").triggerHandler("click"); 不触发内置属性;

事件对象属性:
event.delegateTarget 谁代替元素绑定的事件;
event.currentTarget 真正是谁绑定的事件;执行事件处理函数的那个对象;
event.target 触发的事件的对象;

e.keyCode;//键盘按下后的键对应的键值;

事件冒泡: 元素中有元素,这些元素都有相同的事件,一旦最里面的元素的事件触发了,外面的所有的元素的相同的事件都会被触发;

取消事件冒泡:return false;还可以取消超链接的默认的点击事件;

each方法:
不同的元素不同的设置方式;也可以遍历数组;

jQuery对象实际就是个伪数组,其中存的元素就是js对象;

释放控制权:.noConflict();

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值