jQuery定义

1.jQuery定义(封装好的js)
jQuery由美国人John Resig于2006年创建,
jQuery是目前最流行的JavaScript 程序库
它是对JavaScript对象和函数的封装。

它的设计思想是write less,do more。
在这里插入图片描述
包含关系

java开发工程师 jQuery用的多 部分需求 方便代码量少
前端 js用的多 所有的需求

题外话:jQuery 和 DOM区别(摘录)
DOM对象,即是我们用传统的方法(javascript)获得的对象。

jQuery对象即是用jQuery类库的选择器获得的对象;
它就是通过jQuery包装DOM对象后产生的对象,它是jQuery独有的。

var dom = document.getElementById("id"); //DOM对象
var $obj = $("#id"); //jQuery对象;

2.为什么使用jQuery?

(1)js实现隔行换色

<!DOCTYPE html>
<html>
  <head>
    <meta charset="utf-8"/>
	<script type="text/javascript">
	window.onload = function(){
	 	var trs = document.getElementsByTagName("tr");
	 	for(var i=0;i<trs.length;i++){
		 	if(i%2==0){
			trs[i].style.background = "red";
		 	}
		}
	}
	</script>
  </head>
  
  <body>
    	<form action="">
    		<table>
    			<tr><td>序号</td><td>订单号</td><td>商品名称</td><td>价格</td></tr>
    			<tr><td>1</td><td>32</td><td>53</td><td>价35</td></tr>
    			<tr><td>2</td><td>4</td><td>商品53称</td><td>价53</td></tr>
    			<tr><td>2</td><td>4</td><td>商品53称</td><td>价53</td></tr>
    			<tr><td>2</td><td>4</td><td>商品53称</td><td>价53</td></tr>
    			<tr><td>2</td><td>4</td><td>商品53称</td><td>价53</td></tr>
    			<tr><td>2</td><td>4</td><td>商品53称</td><td>价53</td></tr>
    			<tr><td>2</td><td>4</td><td>商品53称</td><td>价53</td></tr>
    		</table>
    	</form>
  </body>
</html>

在这里插入图片描述
(2)jQuery实现隔行换色

<!DOCTYPE html>
<html>
  <head>
    <meta charset="utf-8"/>
	<script type="text/javascript" src="js/jquery-1.8.3.min.js"></script>
	<script type="text/javascript">
		$(function(){
			$("tr:even").css("background","red");
		});
	</script>
  </head>
  //省略,与上方一样
</html>

3.jQuery语法结构

$(selector).action(); //$(选择器).action(事件);
$(function(){}); //初始化函数,必须要写。

工厂函数$(): 将DOM对象转化为jQuery对象
选择器 selector: 获取需要操作的DOM 元素
方法action(): jQuery中提供的方法,其中包括绑定事件处理的方法

4.引入jQuery类库
jquery-1.8.3.min (.js) 放在js文件夹里

<script src="js/jquery-1.8.3.min.js" type="text/javascript"></script>

写程序时,还需要加<script type="text/javascript"></script>
不能再原来的基础上写。

同时也可以在网上引入比如

<script src="https://code.jquery.com/jquery-3.1.1.min.js"></script>

题外话:
jquery1.8 编译的 HTML 帮助文件 (.chm) api
相当于新华字典

ctrl + f 查找

5.jQuery-HelloWorld-实现弹出提示框

<script type="text/javascript" src="js/jquery-1.8.3.min.js"></script>
    <script type="text/javascript" >
        $(function(){
            alert("快乐");
        });
</script>

在这里插入图片描述

和body里的内容 同时执行

6.jQuery应用实战

6.1 addClass( )添加样式
addClass( )添加样式

<!DOCTYPE html>
<html>
  <head>
   <meta charset="utf-8"/>
	<style type="text/css">
		.h{
			background:red
		}
	</style>
	<script type="text/javascript" src="js/jquery-1.8.3.min.js"></script>
	<script type="text/javascript">
	 $(function(){
		$("tr:even").addClass("h");
//获取对应的偶数行
	});
	</script>
  </head>

  <body >
    	<form action="" >
    		<table >
    			<tr><td>序号</td><td>订单号</td><td>商品名称</td><td>价格</td></tr>
    			<tr><td>1</td><td>32</td><td>53</td><td>价35</td></tr>
    			<tr><td>2</td><td>4</td><td>商品53称</td><td>价53</td></tr>
    			<tr><td>2</td><td>4</td><td>商品53称</td><td>价53</td></tr>
    			<tr><td>2</td><td>4</td><td>商品53称</td><td>价53</td></tr>
    			<tr><td>2</td><td>4</td><td>商品53称</td><td>价53</td></tr>
    			<tr><td>2</td><td>4</td><td>商品53称</td><td>价53</td></tr>
    			<tr><td>2</td><td>4</td><td>商品53称</td><td>价53</td></tr>
    		</table>
    	</form>
  </body>
</html>

在这里插入图片描述
6.2 css( )设置样式

</script>
	<script type="text/javascript">
	 $(function(){
		 $("tr:even").css("background","red");
	});
</script>

在这里插入图片描述
6.3 show( )、hide( )元素显示和隐藏

<script type="text/javascript">
$(document).ready(function(){
//(document).ready 新的省略不写
  $(".btn1").click(function(){
  	$("p").hide();
  });
  $(".btn2").click(function(){
  	$("p").show();
  });
});
</script>


<body>
<p>This is a paragraph.</p>
<button class="btn1">Hide</button>
<button class="btn2">Show</button>
</body>

在这里插入图片描述
点击hide隐藏,点击show出现。
在这里插入图片描述
6.4 next()链式操作

next 是 下一个

<body>
<ul>
   <li>list item 1</li>
   <li>list item 2</li>
   <li class="third-item">list item 3</li>
   <li>list item 4</li>
   <li>list item 5</li>
</ul>
<script>
$('li.third-item').next().css('background-color', 'red');
</script>
</body>

在这里插入图片描述
6.5 css({})隐式迭代(数组遍历)

$(function() {
        $("li").css({"font-weight":"bold","color":"red"});
 });

案例:

<script>
$(document).ready(function(){
  $("button").click(function(){
    $("p").css({"background-color":"yellow","font-size":"200%"});
  });
});
//每个p进行遍历
</script>


<body>
<h2>这是标题</h2>
<p style="background-color:#ff0000">这是一个段落。</p>
<p style="background-color:#00ff00">这是一个段落。</p>
<p style="background-color:#0000ff">这是一个段落。</p>
<p>这是一个段落。</p>
<button>为 p 元素设置多个样式</button>
</body>

在这里插入图片描述在这里插入图片描述
6.6 DOM对象和jQuery对象的转化
除了jQuery对象就是DOM对象

(1)DOM对象转为jQuery对象

var two =document.getElementById("2"); //DOM对象
var $two_new =$(two); //DOM对象转化为jQuery对象

前面的$可以省略,建议要加,方便别人看懂

typeof 不用 这边判断用 instanceof 也是 特殊的一个

(2)jQuery对象转为DOM对象

第一种方式:

var $two_new =$ ("#two "); //jQuery对象
var two_after =$two_new [0];     //DOM对象

第二种方式:

var $two_new =$("# two ");  //jQuery对象
var two_after2 =$two_new.get(0); //DOM对象

举例:

<script src="js/jquery-1.8.3.min.js" type="text/javascript">
</script>
    <script>
        $(function(){
            var two = document.getElementById("2");

            var $two_new = $(two);//jQuery对象

            var two_after = $two_new[0];//DOM对象
            var two_after = $two_new.get(0);//DOM对象

            if(two_after instanceof jQuery){
                alert("jQuery对象");
            }else{
                alert("DOM对象");
            }
        });
    </script>


<body>
    <div>快乐</div>
    <div id="2">你好</div>
    <div>真棒</div>
</body>

7.扩展-初始化函数-$(document).ready()与window.onload的区别
在这里插入图片描述
window.onload的执行时机:
必须等待网页中所有的内容加载完毕后
(包括图片)才能执行

如果有两个window.onload,那么会执行第二个。

题外话:
初始化函数
<script></script>写在上面时,需要初始化函数,
$(document).ready(function(){});
当写在下面时,就不用写。

jQuery为多元素添加统一样式(摘录)

$('p,#id,.class').css({'color':'#fff','font-size':'14px'});

----2021.10.06&10.07

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值