15158846557 在线咨询 在线咨询
15158846557 在线咨询
所在位置: 首页 > 营销资讯 > 网站运营 > 5.jQuery 快速网页交互开发- jQ常用方法

5.jQuery 快速网页交互开发- jQ常用方法

时间:2023-06-06 13:33:02 | 来源:网站运营

时间:2023-06-06 13:33:02 来源:网站运营

5.jQuery 快速网页交互开发- jQ常用方法:

本章内容包括:1.链式调用、2.find() 、3.next()、4.prev() 、5.nextAll() 、6.prevAll()、7.parents() 祖先级、8.综合案例-送验证码控制按钮禁用和放大镜切换项

7.链式调用

jQuery 对象调用任何方法(除了节点关系方法)执行完后,方法都会有一个返回值,返回值就是 jQuery 对象自己,这个现象给我们提供了便利,可以对执行结果继续打点调用 JQ 的方法和属性。

可以使用 jQuery 对象进行连续打点调用。

<head> <style> * { margin: 0; padding: 0; } .box { width: 1000px; height: 80px; border: 1px solid #333; margin-top: 10px; } .box p, .box h2 { float: left; width: 80px; height: 80px; margin-right: 20px; background-color: #ccc; } </style></head><body> <div class="box"> <p>p</p> <p>p</p> <p>p</p> <p>p</p> <h2>h2</h2> <h2>h2</h2> <h2>h2</h2> </div> <div class="box"> <p>p</p> <p>p</p> <p>p</p> <p>p</p> <h2>h2</h2> <h2>h2</h2> <h2>h2</h2> </div> <div class="box"> <p>p</p> <p>p</p> <p>p</p> <p>p</p> <h2>h2</h2> <h2>h2</h2> <h2>h2</h2> </div> <script src="js/jquery-1.12.4.min.js"></script> <script> // 获取所有的 p 标签 var $ps = $("p") var $box = $(".box") </script></body>$ps.click(function () { console.log($(this).css("background-color","red").html("哈哈")) })$ps.click(function () { // 让点击的自己 颜色变红色 $(this).css("background-color", "red") // 自己变红色 .siblings().css("background-color", "gold") // 兄弟变金色 })$ps.click(function () { // 让点击的自己 颜色变红色 $(this).css("background-color", "red") // 自己变红色 .siblings().css("background-color", "gold") // 兄弟变金色 .parent().css("background-color", "pink") // 父级变粉色 .siblings().css("background-color", "blue") // 父级的兄弟变蓝色 .children().css("background-color", "yellowgreen") // 父级的兄弟的子级变黄绿色 })

8.jQuery 其他关系查找方法

<head> <style> * { margin: 0; padding: 0; } .box { width: 1000px; height: 80px; border: 1px solid #333; margin-top: 10px; background-color: #fff; } .box p, .box span { float: left; width: 80px; height: 80px; margin-right: 20px; background-color: #ccc; } .box span { background-color: pink; } </style></head><body> <div class="box" id="box1"> <p></p> <p></p> <p></p> <p> <!-- <span></span> --> </p> <span></span> <span></span> <span></span> </div> <div class="box"> <p></p> <p></p> <p></p> <p></p> <span></span> <span></span> <span></span> </div> <div class="box"> <p></p> <p></p> <p></p> <p></p> <span></span> <span></span> <span></span> </div> <script src="js/jquery-1.12.4.min.js"></script> <script> // 获取元素 var $box1 = $("#box1") var $box = $(".box") var $child = $box.children() </script></body>

8.1 find() 后代元素

jQuery 对象可以利用 find() 方法,传递一个参数,参数部分规定的选择器,查找范围是所有后代。

参数是字符串格式的选择器

// find() 方法查找后代中的 span 元素 $box1.find("span").css({ "width": 50, "height": 50 })

8.2 兄弟元素

紧邻的兄弟元素方法

通过传递参数可以进行二次选择,参数是字符串格式的选择器,在前面或后面兄弟中选中 符合选择器规定的部分

next()

下一个兄弟

$child.click(function () { // 让自己变红色,让下一个兄弟变天蓝色 $(this).css("background-color", "red") .next().css("background-color", "skyblue") })

prev()

前一个兄弟

$child.click(function () { // 让自己变红色,让上一个兄弟变蓝色 $(this).css("background-color", "red") .prev().css("background-color", "blue") })

nextAll()

后面所有兄弟

$child.click(function () { // 让自己后面所有兄弟变黄色 $(this).nextAll("p").css("background-color", "yellow") })

prevAll()

前面所有兄弟

$child.click(function () { // 让自己变红色,让前面所有兄弟变蓝色,让后面所有兄弟变黄色 $(this).css("background-color", "red") .prevAll().css("background-color", "blue") })

8.3 parents() 祖先级

通过该方法得到的是指定对象的包含 body 在内的所有祖先级元素组成的 jQuery 对象。

通过传参进行二次选择,参数位置是字符串格式的选择器

$child.click(function () { // 让自己变红色,祖先级变天蓝色 $(this).css("background-color", "red") .parents("div").css("background-color", "skyblue") })

9.综合案例

<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <title>Document</title> </head><body> <input type="text"> <input type="button" value="发送"> <script src="js/jquery-1.12.4.min.js"></script> <script> // 获取元素 var $btn = $("input:button") // 添加按钮的点击事件 $btn.click(function () { // 定义一个变量存储时间的数字 var n = 5; // 让按钮被禁用 // 替换按钮的文字内容 $(this).prop("disabled",true).val(n + "s 后重新发送") // 每隔 1s 更改倒计时内容 // 通过定时器进行每隔 1s 减时间效果 var timer = setInterval(() => { n--; // 文字内容发生变化 // 定时器内部的this指向的默认为 window $(this).val(n + "s 后重新发送") // 判断如果时间到了 0 ,就要停止定时器 if (n <= 0) { clearInterval(timer) // 5s 结束后,需要让文字恢复 发送 // 让按钮取消禁用 $(this).val("重新发送").prop("disabled",false) } },1000) }) </script></body></html>注意:与之前的放大镜案例作比较

  1. index.html
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <title>Document</title> <link rel="stylesheet" href="index.css"></head><body> <!--版心 --> <div class="w"> <!-- 左侧 --> <div class="leftBox"> <!-- 上 --> <div class="top"> <img src="img/m1.jpg"> </div> <ul> <li class="active"> <img src="img/s1.jpg" msrc="m1.jpg" bsrc="b1.jpg"> </li> <li> <img src="img/s2.jpg" msrc="m2.jpg" bsrc="b2.jpg"> </li> <li> <img src="img/s3.jpg" msrc="m3.jpg" bsrc="b3.jpg"> </li> </ul> </div> <!-- 右侧 --> <div class="rightBox"> <img src="img/b1.jpg" alt=""> </div> </div> <script src="lib/jquery-1.12.4.js"></script> <script> // 获取元素 var $imgs = $(".leftBox ul li img"); var $mimg = $(".leftBox .top img") var $bimg = $(".rightBox img") // 1.给小图的图片添加鼠标移上事件,切换类名 $imgs.mouseenter(function () { // 排他操作 // 给图片自己的父级添加类名,让父级的兄弟取消类名 $(this).parent().addClass("active").siblings().removeClass("active") // 2.更改中图和大图的路径 // 存储路径中的前缀 var path = "img/"; // 中图和大图的路径存在了对应小图的自定义属性中 var msrc = path + $(this).attr("msrc"); var bsrc = path + $(this).attr("bsrc"); // 直接设置给对应的图片 $mimg.attr("src", msrc) $bimg.attr("src", bsrc) }) </script></body></html>
  1. index.css
* { margin: 0; padding: 0;}ul { list-style: none;}/* 版心 */.w { width: 1120px; margin: 0 auto;}/* 左侧盒子 */.leftBox { width: 400px; float: left;}.leftBox .top { width: 400px; border:1px solid #ccc;}.leftBox .top img { width: 400px;}.leftBox ul { width: 188px; margin: 10px auto;}.leftBox ul li { float: left; width: 54px; height: 54px; border:1px solid #fff;}.leftBox ul li.active { border-color: red;}.leftBox ul li + li { margin-left: 10px;}/* 右侧盒子 */.rightBox { float: left; margin-left:10px; width: 500px; height: 500px; border:1px solid #ccc; overflow: hidden;}

关键词:方法,交互

74
73
25
news

版权所有© 亿企邦 1997-2025 保留一切法律许可权利。

为了最佳展示效果,本站不支持IE9及以下版本的浏览器,建议您使用谷歌Chrome浏览器。 点击下载Chrome浏览器
关闭