JQuery对节点的各种操作

jQuery就是对javaScript的封装,方便使用。
简单的id、class选择器什么的就不写了。

选择器

层级选择器

				//包含选择器   
				$("#div1 span").css("backgroundColor","red");
				
				//子父选择器  div1下面的直系子节点  
				$("#div1>span").css("backgroundColor","red");
				
				//后面紧跟的下一个元素
				$("#span1 + span").css("backgroundColor","red");
                 
                 //获得指定元素后面所有的span标签
                $("#span1 ~ span").css("backgroundColor","red");

位置选择器

				//获得指定标签的第一个元素对象
				$("ul li").first().css("background-color","red");
				$("ul li:first").css("background-color","red");
				//获得指定标签的最后一个元素对象
				$("ul li").last().css("background-color","green");
				$("ul li:last").css("background-color","green");
				//所有下标为偶数的对象,下标从0开始。
				$("ul li:even").css("background-color","green");
				//获得指定下标索引对象
				$("li").eq(3).css("background-color","green");
				$("li:eq(3)").css("background-color","gold");
				//匹配所有大于给定索引值的对象
				$("li:gt(3)").css("background-color","green");
				//匹配所有小于给定索引值的对象
				$("li:lt(3)").css("background-color","gold");

属性选择器

				//获得input标签中 type = text 的标签内容
				$("input[type=text]").css("border","1px solid red");
				//获得input标签中 name属性值以z开头的对象
				$("input[name^=z]").css("border","1px solid red");
				//获得input标签中 name属性值以d结尾的对象
				$("input[name$=d]").css("border","1px solid gold");
				//name属性不等于指定内容的元素
				$("input[name!=z_pwd]").css("border","1px solid gold");
				//name属性值包含z的元素
				$("input[name*=z]").css("border","1px solid gold");

子元素选择器

				//索引从1开始。
				$("ul li:nth-child(1)").css("background-color","gold");
				$("ul li:nth-child(odd)").css("background-color","gold");//奇数
				//获得n前面数值的倍数索引值的对象
				$("ul li:nth-child(3n)").css("background-color","gold");
				//匹配第一个子元素
				$("ul li:first-child").css("background-color","gold");
				//匹配最后一个子元素
				$("ul li:last-child").css("background-color","gold");
				//匹配ul中只有一个li的节点
				$("ul li:only-child").css("background-color","gold");

表单选择器

				//获得input标签中type=text的对象
				$(":text").css("background-color","green");
				//整个表单无论是否是input标签全选
				$(":input").css("background-color","green");
				//获得被选中的复选框和单选框
				$("input:checkbox");
				$("input:selected");

操作节点

操作节点的属性

			 //获得元素的对象
			 var  inp=$("#zh");
	 
			 //JQ获得属性   inp.attr("value"):获得的默认的值,并且不随输入改变
			 console.log(inp.attr("type")+"----"+inp.attr("name")+"----"+inp.attr("value"));
				 
			 console.log(inp[0].type);
			 //js方式获得对象
			 var inp2=document.getElementById("but");
	 
			 //获得对象实时输入的值
			 console.log(inp.val());
             //操作元素对象属性
             inp.attr("type","button");
              
             inp.attr("value","点击");
                 
             //综合的方式 {key1:value1,key2:value2 }--json数据格式
             inp.attr({
    
    "type":"button","value":"点击"});
             //checked
             alert($("#man").attr("checked"));
             //true  一般作用到checked、disabled、selected
             alert($("#man").prop("checked")); 

操作css样式

有两种方法,一种是调用css函数直接对样式进行修改,另一种是提前写好样式类,为目标元素增加class。第一种方法与javaScript不同的是,当元素的样式不是行内式的话,javaScript是无法获取到css样式的,而JQuery可以获取到,足以证明其强大之处。

操作文本值

				//获得纯文本
				//innerText
				var t = $("#div1").text();
				//innerHTML
				var h = $("#div1").html();
				console.log(t);
				console.log(h);
				
				//操作文本内容
				// $("#div1").text("<u>zouzou</u>");
				$("#div1").html($("#div1").html()+"<u>qqfamor</u>");

操作元素节点对象

				//创建一个节点对象
				var p = $("<p>List Item2</p>");
				//向div内部添加
				//向div1中追加元素,追加到现有元素之后
				// $("#div1").append(p);
				//将p追加到div中
				// p.appendTo($("#div1"));
				//往div1中追加元素,追加到现有元素之前
				// $("#div1").prepend(p);
				
				//向div外部添加
				//添加在div之后
				// $("#div1").after(p);
				//添加在div之前
				// $("#div1").before(p);
				
				//移除指定节点对象
				// $("#div1").remove();
				//清空对象
				$("#div1").empty();

JQuery中的事件机制

JQuery中事件函数的关键字与javaScript相差不大,其中需要注意的是one、trigger和unbind。
one事件:页面不刷新,该事件仅仅加载一次。
trigger事件:对元素的某个事件进行再一次的操作,但是无法获取有效的返回值。
unbind事件:解除某个元素的某个绑定的事件

				$("#bu1").click(function(){
    
    
					alert("单击事件");
				})
				
				$("#bu1").dblclick(function(){
    
    
					alert("双击事件");
				})
				
				//绑定多个事件
				$("#bu2").bind({
    
    
					click:function(){
    
    },
					dblclick:function(){
    
    }
				})
				
				//One事件 只生效一次
				$("#bu3").one("click",function(){
    
    
					alert("one事件只执行一次");
				})
				
				//trigger
				$("#bu4").click(function(){
    
    
					$("#bu1").trigger("click");
				})
				
				//unbind 解除绑定
				$("#bu5").click(function(){
    
    
					//解绑指定事件
					$("#bu1").unbind("click");
					
					//解绑全部事件
					$("#bu1").unbind();
				})

JQ简易动画

					//JQ动画标签
					$("#div1").hide(1000);//隐藏
					
					$("#div1").show(1000);//出现
					
					$("#div1").slideUp(1000);
					
					$("#div1").slideDown(1000);
					//淡出淡入
					$("#div1").fadeOut(1000);
					$("#div1").fadeIn(1000);
					//显示的元素隐藏,隐藏的元素显示
					$("div").toggle(1000);

猜你喜欢

转载自blog.csdn.net/qq_44157349/article/details/115308157