JavaWeb系列十七: jQuery选择器 上

jQuery选择器

  • jQuery基本选择器
  • jquery层次选择器
  • 基础过滤选择器
  • 内容过滤选择器
  • 可见度过滤选择器

在这里插入图片描述

  1. 选择器是jQuery的核心, 在jQuery中, 对事件处理, 遍历 DOM和Ajax 操作都依赖于选择器
  2. jQuery选择器的优点
  • $(“#id”) 等价于 document.getElementById(“id”);
  • $(“tagName”) 等价于 document.getElementsByTagName(“tagName”);
  • 完善的事件处理机制

应用实例
在这里插入图片描述
前端报错的位置
在这里插入图片描述

jQuery基本选择器

在这里插入图片描述

基本选择器是jQuery中最常用的选择器, 也是最简单的选择器, 它通过id, class和标签名来查找DOM对象

种类用法返回值说明
id$(“#myDiv”)单个元素组成的集合直接选择html中的id=“myDiv”
Element$(“div”)集合元素element翻译过来的意思就是元素, 所有element其实就是html已经定义的标签元素, 比如div, p, a, input等
class$(“.myClass”)集合元素直接选择html代码中class="myClass"的元素或元素组(因为在同一html中, class是可以存在多个同样的值的)
*$(“*”)集合元素匹配所有的元素, 包括, 多用于结合上下文来搜索
selector1, selector2… selectorN$(“div, span, p.myClass”)集合元素将每一个选择器匹配到的元素合并后一起返回, 你可以指定任意多个选择器, 并将匹配到的元素合并到集合中, p.myClass是表示匹配元素 p class=“myClass”
<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>Title</title><script type="text/javascript" src="script/jquery-3.6.0.min.js"></script><script type="text/javascript">$(function () {//1.改变id为one的元素的背景色为yellow$("#btn01").click(function () {$("#one").css("background", "yellow");});//2.改变class为mytag的的所有元素的背景色为red$("#btn02").click(function () {$(".mytag").css("background", "red");});//3.改变元素名为div的的所有元素的背景色为black$("#btn03").click(function () {$("div").css("background", "black");});//4.改变所有元素的背景色为pink$("#btn04").click(function () {$("*").css("background", "pink");});//5.改变所有的<span>元素和id为two, class为mytag 的元素的背景色为blue$("#btn05").click(function () {$("span.c1, #two, .mytag").css("background", "blue");});});</script>
</head>
<body>
<button id="btn01">改变id为one的元素的背景色为yellow</button>
<button id="btn02">改变class为mytag的所有元素的背景色为red</button>
<button id="btn03">改变元素名为&lt;div&gt;的所有元素的背景色为black</button>
<button id="btn04">改变所有元素的背景色为pink</button>
<button id="btn05">改变所有的&lt;span&gt;元素和id为two, class为mytag 的元素的背景色为blue</button>
<hr/>
<div style="height: 200px; width: 300px; background-color: chartreuse" id="one">id=one</div>
<div style="height: 200px; width: 300px; background-color: pink" id="two" class="mytag">id=two</div>
<div style="height: 200px; width: 300px; background-color: blueviolet" id="three" class="mytag">id=three</div>
<div style="height: 200px; width: 300px; background-color: blue" id="four" class="mytag">id=four</div>
<span style="background-color: chartreuse" class="c1">id=five</span>
<span style="background-color: chartreuse" class="c2">id=six</span>
</body>
</html>

jquery层次选择器

如果想要通过DOM元素之间的层次关系来获取特定元素, 例如后代元素, 子元素, 相邻元素, 兄弟元素等, 则需要使用层次选择器

种类用法返回值说明
ancestor descendant$(“form input”)集合元素在给定的祖先元素下匹配所有后代元素
parent > child$(“form > input”)集合元素在给定的父元素下匹配所有子元素(注意区分后代元素和子元素)
prev + next$(“label + input”)集合元素匹配所有紧跟在prev元素后的next元素
prev ~ siblings$(“form ~ input”)集合元素匹配prev元素之后的所有siblings元素. 注意: 是匹配之后的元素, 不包含该元素在内, 并且匹配的是和prev同级的元素, 其后辈元素不被匹配

注意: (“prev ~ div”)选择器只能选择"#prev"元素后面的同辈元素; 而jQuery中的siblings方法与位置无关, 只要是同辈节点就可以选取

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>Title</title><script type="text/javascript" src="script/jquery-3.6.0.min.js"></script><script type="text/javascript">$(function () {//1.改变<body>内所有<div>元素的背景色为green$("#btn01").click(function () {$("div").css("background-color", "green");});//2.改变<body>内子<div>元素(第一层级的div)的背景色为red$("#btn02").click(function () {$("body > div").css("background", "red");});//3.改变id为one的下一个紧接着的div元素(必须是紧跟着)的背景色为yellow$("#btn03").click(function () {$("#one + div").css("background", "yellow");});//4.示例: 改变id为two的元素后面所有的div元素(满足兄弟元素[处于同一层级]即可)的背景色为brown$("#btn04").click(function () {$("#two ~ div").css("background", "brown");});//5.改变id为two的元素的所有兄弟元素[同级元素]中的div元素的背景色为white$("#btn05").click(function () {$("#two").siblings("div").css("background-color", "white");});});</script>
</head>
<body>
<input type="button" value="改变<body>内所有<div>元素的背景色为green" id="btn01"/>
<input type="button" value="改变<body>内子<div>元素的背景色为red" id="btn02"/>
<input type="button" value="改变id为one的下一个<div>元素的背景色为yellow" id="btn03"/>
<input type="button" value="改变id为two的元素后面所有的兄弟元素(即div元素)的背景色为brown" id="btn04"/>
<input type="button" value="改变id为two的元素所有<div>兄弟元素的背景色为white" id="btn05"/>
<hr/>
<div id="one" class="mytag" style="background-color: darkgray; width: 300px;height: 300px;float: left">div id=one
</div>
<div id="two" class="mytag" style="background-color: darkgray; width: 300px;height: 300px;float: left">div id=two<div id="two01" style="background-color: lightpink; width: 100px;height: 100px;">id two01</div><div id="two02" style="background-color: lightpink; width: 100px;height: 100px;">id two02</div>
</div>
<div id="three" class="mytag" style="background-color: darkgray; width: 300px;height: 300px;float: left">div id=three<div id="three01" style="background-color: lightpink; width: 100px;height: 100px;">id three01</div>
</div>
</body>
</html>

基础过滤选择器

基础过滤选择器介绍:

种类用法返回值说明
:first$(“tr:first”)单个元素组成的集合匹配找到的第一个元素
:last$(“tr:last”)集合元素匹配找到的最后一个元素
:not(selector)$(“input:not(:checked)”)集合元素去除所有与给定选择器匹配的元素, 意思是没有被选中的input(当 input type=“checkbox”)
:even$(“tr:even”)集合元素匹配所有索引值为偶数的元素, 从0开始计数.js的数组都是从0开始计数的, 例如要选择table的行, 因为是从0开始计数, 所以table中的第一个tr就为偶数0
:odd$(“tr:odd”)集合元素匹配所有索引值为奇数的元素, 从0开始计数
:eq(index)$(“tr:eq(0)”)集合元素匹配一个给定索引值的元素.eq(0)就是获取第一个tr元素, 括号里面的是索引值, 不是元素排放数
:gt(index)$(“tr:gt(0)”)集合元素匹配所有大于给定索引值的元素
:lt(index)$(“tr:lt(0)”)集合元素匹配所有小于给定索引值的元素
:header$(“:header”).css(“background”, “red”)集合元素匹配所有h1, h2, h3之类的标题元素, 这个是专门用来获取h1, h2这样的元素
:animated集合元素匹配所有正在执行动画效果的元素
<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>基础过滤选择器</title><script type="text/javascript" src="script/jquery-3.6.0.min.js"></script><script type="text/javascript">$(function () {$("#btn01").click(function () {//1.改变第一个<div>元素的背景色为green$("div:first").css("background", "green");$("div:eq(0)").css("background", "green");});$("#btn02").click(function () {//2.改变最后一个<div>元素的背景色为red//所谓最后一个是指从上到下, 从外层到内层的最后一个$("div:last").css("background", "red");});$("#btn03").click(function () {//3.改变class不为myTag的所有<div>元素的背景色为yellow$("div:not(.myTag)").css("background", "yellow");});$("#btn04").click(function () {//4.改变索引值为偶数的<div元素>的背景色为brown//冒号:可以理解为过滤$("div:even").css("background", "brown");});$("#btn05").click(function () {//5.改变索引值为奇数的<div元素>的背景色为blue$("div:odd").css("background", "blue");});$("#btn06").click(function () {//6.改变索引值大于3的<div元素>的背景色为white$("div:gt(3)").css("background", "white");});$("#btn07").click(function () {//7.改变索引值等于3的<div元素>的背景色为pink$("div:eq(3)").css("background", "pink");});$("#btn08").click(function () {//8.改变索引值小于3的<div元素>的背景色为gray$("div:lt(3)").css("background", "gray");});$("#btn09").click(function () {//9.改变所有的标题元素背景色为purple$(":header").css("background", "purple");});})</script>
</head><body>
<input type="button" value="改变第一个<div>元素的背景色为green" id="btn01"/>
<input type="button" value="改变最后一个<div>元素的背景色为red" id="btn02"/>
<input type="button" value="改变class不为myTag的所有<div>元素的背景色为yellow" id="btn03"/>
<input type="button" value="改变索引值为偶数的<div元素>的背景色为brown" id="btn04"/>
<input type="button" value="改变索引值为奇数的<div元素>的背景色为blue" id="btn05"/>
<input type="button" value="改变索引值大于3的<div元素>的背景色为white" id="btn06"/>
<input type="button" value="改变索引值等于3的<div元素>的背景色为pink" id="btn07"/>
<input type="button" value="改变索引值小于3的<div元素>的背景色为gray" id="btn08"/>
<input type="button" value="改变所有的标题元素背景色为purple" id="btn09"/>
<hr/>
<hr/>
<div id="one" class="myTag" style="background-color: darkgray; width: 300px;height: 300px;float: left">div id=one
</div>
<div id="two" class="myTag" style="background-color: darkgray; width: 300px;height: 300px;float: left">div id=two<div id="two01" class="yourTag" style="background-color: lightpink; width: 100px;height: 100px;">id two01</div><div id="two02" class="yourTag" style="background-color: lightpink; width: 100px;height: 100px;">id two02</div>
</div>
<div id="three" class="myTag" style="background-color: darkgray; width: 300px;height: 300px;float: left">div id=three<div id="three01" class="yourTag" style="background-color: lightpink; width: 100px;height: 100px;">id three01</div>
</div>
<h1>标题一</h1>
<h2>标题二</h2>
<h3>标题三</h3>
</body>
</html>

内容过滤选择器

内容过滤选择器的过滤规则主要体现在它所包含的子元素和文本内容上

种类用法返回值说明
:contains(text)$(“div:contains(‘John’)”)集合元素匹配包含给定文本的元素, 这个选择器比较有用, 当我们要选择的不是dom标签元素时, 它就派上用场了, 它的作用是查找被标签"围"起来的文本内容是否符合指定的内容的(子元素包含也算)
:empty$(“td:empty”)集合元素匹配所有不包含子元素或者文本的空元素
:has(selector)$(“div:has( p)”).addClass(“test”)集合元素匹配含有选择器所匹配的元素的元素. 给所有包含p元素的div标签加上class=“test”
:parent$(“td:parent”)集合元素匹配包含子元素或者文本的元素, 注意: 这里是":parent", 不是".parent", 与":empty"含义相反
<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>内容过滤选择器</title><style>div {background-color: darkgray;width: 300px;height: 300px;float: left;}div > div {background-color: lightpink;width: 100px;height: 100px;}</style><script type="text/javascript" src="script/jquery-3.6.0.min.js"></script><script type="text/javascript">$(function () {$("#btn01").click(function () {//1.改变含有文本 'di' 的<div>元素的背景色为green//子div含有文本'di', 父div也会被选中$("div:contains('di')").css("background", "green");});$("#btn02").click(function () {//2.改变不包含子元素或文本的<div>元素的背景色为red$("div:empty").css("background", "red")});$("#btn03").click(function () {//这个写法是选择有class='yourTag'的div$("div.yourTag").css("background", "yellow");//3.改变含有class为yourTag元素的所有<div>元素的背景色为yellow//这个写法是选择有class='yourTag'的div的父元素(div)// $("div:has(.yourTag)").css("background", "yellow");});$("#btn04").click(function () {//4.改变含有子元素(或者文本元素)的所有<div>元素的背景色为brown$("div:parent").css("background", "brown");});$("#btn05").click(function () {//5.改变不含有文本 'di' 的<div元素>的背景色为blue$("div:not(:contains('di'))").css("background", "blue");});})</script>
</head>
<body>
<input type="button" value="改变含有文本 'di' 的<div>元素的背景色为green" id="btn01"/>
<input type="button" value="改变不包含子元素或文本的<div>元素的背景色为red" id="btn02"/>
<input type="button" value="改变含有class为yourTag的所有<div>元素的背景色为yellow" id="btn03"/>
<input type="button" value="改变含有子元素(或者文本元素)的所有<div>元素的背景色为brown" id="btn04"/>
<input type="button" value="改变不含有文本 'di' 的<div元素>的背景色为blue" id="btn05"/>
<hr/>
<hr/>
<div id="one" class="myTag"><div id="one01" class="yourTag">div id=one01</div>
</div>
<div id="two" class="myTag">div id=two<div id="two01" class="yourTag">id two01</div><div id="two02" class="yourTag">id two02</div>
</div>
<div id="three" class="myTag">div id=three<div id="three01" class="yourTag">id three01</div>
</div>
<div id="four" class="myTag">XXXXXXXXXXXX
</div>
<div id="five" class="myTag"></div>
<div id="mover" class="yourTag">执行动画
</div>
</body>
</html>

可见度过滤选择器

可见度过滤选择器是根据元素的可见和不可见状态来选择相应的元素

种类用法返回值说明
:hidden$(“input:hidden”)集合元素匹配所有的不可见元素, input元素的type属性为"hidden"会被匹配到, css中display:none和input type="hidden"都会被匹配到
:visible$(“tr:visible”)集合元素匹配所有的可见元素
<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>可见度过滤选择器</title><style>.visible {display: none;}</style><script type="text/javascript" src="script/jquery-3.6.0.min.js"></script><script type="text/javascript">$(function () {$("#btn01").click(function () {//1.改变所有可见的<div>元素的背景色为green$("div:visible").css("background", "green");});$("#btn02").click(function () {//2.选取所有不可见的<div>元素, 利用jQuery中的show()方法将它们显示出来, 并设置背景色为red$("div:hidden").css("background", "red");$("div:hidden").show();});$("#btn03").click(function () {//1.先得到所有隐藏的input元素//  $input是一个jquery对象, 而且是数组对象var $inputs = $("input:hidden");//2.遍历//方式1 - for循环for (var i = 0; i < $inputs.length; i++) {//这里input就是一个dom对象var input = $inputs[i];alert("值是=" + input.value);}//方式2 - jquery each() 可以实现数组遍历//说明://(1)each方法遍历时, 会将 $inputs数组的元素取出,//  传给function() {} -> this$inputs.each(function () {//这里可以使用this获取每次遍历的对象//this对象是一个dom对象console.log("值(dom方式)是=" + this.value);//也可以将this转成jquery对象, 使用jquery方法取值console.log("值(jquery方式)是=" + $(this).val());});});})</script>
</head>
<body>
<input type="button" value="改变所有可见的<div>元素的背景色为green" id="btn01"/>
<input type="button" value="选取所有不可见的<div>元素, 利用jQuery中的show()方法将它们显示出来, 并设置背景色为red"id="btn02"/>
<input type="button" value="选取所有的文本隐藏域, 并打印它们的值" id="btn03"/>
<input type="button" value="改变含有子元素(或者文本元素)的所有<div>元素的背景色为brown" id="btn04"/>
<input type="button" value="改变不含有文本 'di' 的<div元素>的背景色为blue" id="btn05"/>
<hr/>
<input type="hidden" value="hidden1"/>
<input type="hidden" value="hidden2"/>
<input type="hidden" value="hidden3"/>
<input type="hidden" value="hidden4"/>
<hr/>
<div id="one" class="visible" style="background-color: darkgray; width: 300px;height: 300px;float: left">div id=one
</div>
<div id="two" class="visible" style="background-color: darkgray; width: 300px;height: 300px;float: left">div id=two
</div>
<div id="three" class="hidden" style="background-color: darkgray; width: 300px;height: 300px;float: left">div id=three
</div>
</body>
</html>

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/36363.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【数据可视化技术】1、如何使用Matplotlib和Seaborn库在Python中绘制热力图

热力图是一种数据可视化技术&#xff0c;可以显示变量之间的相关性。这个代码段是数据分析和可视化的常用方法&#xff0c;特别适合于展示变量之间的相关性&#xff0c;对于数据科学和机器学习项目非常有帮助。 1、 导入必要的库 首先&#xff0c;确保你已经安装了matplotlib…

收银系统源码-千呼新零售【分销商城】

千呼新零售2.0系统是零售行业连锁店一体化收银系统&#xff0c;包括线下收银线上商城连锁店管理ERP管理商品管理供应商管理会员营销等功能为一体&#xff0c;线上线下数据全部打通。 适用于商超、便利店、水果、生鲜、母婴、服装、零食、百货、宠物等连锁店使用。 详细介绍请…

水位自动监测摄像机

随着科技的不断进步&#xff0c;水位自动监测摄像机作为现代智能监控技术的重要应用&#xff0c;正在广泛应用于水利工程、防洪管理和环境监测等领域&#xff0c;显著提升了监测效率和数据准确性。水位自动监测摄像机利用高精度摄像头和先进的图像处理技术&#xff0c;能够实时…

鸿蒙系统——强大的分布式系统

鸿蒙相比较于传统安卓最最最主要的优势是微内核分布式操作系统&#xff0c;具有面向未来&#xff0c;跨设备无缝协作&#xff0c;数据共享的全场景体验。下面简单来感受一下鸿蒙系统的多端自由流转。 自由流转概述 场景介绍 随着全场景多设备的生活方式不断深入&#xff0c;…

解释什么是lambda函数?它有什么好处?

&#x1f49d;&#x1f49d;&#x1f49d;欢迎莅临我的博客&#xff0c;很高兴能够在这里和您见面&#xff01;希望您在这里可以感受到一份轻松愉快的氛围&#xff0c;不仅可以获得有趣的内容和知识&#xff0c;也可以畅所欲言、分享您的想法和见解。 推荐:「stormsha的主页」…

深度解密Spark性能优化之道

课程介绍 课程通过实战案例解析和性能调优技巧的讲解&#xff0c;帮助学员提升大数据处理系统的性能和效率。课程内容涵盖了Spark性能调优的各个方面&#xff0c;包括内存管理、并行度设置、数据倾斜处理、Shuffle调优、资源配置等关键技术和策略。学员将通过实际案例的演示和…

线性代数知识点搜刮

求你别考太细... 目录 异乘变零定理 行列式转置 值不变 重要关系 中间相等&#xff0c;取两头 特征值公式 向量正交 点积为0 拉普拉斯定理 矩阵的秩 特征值和特征向量 |A|特征值的乘积 & tr(A)特征值的和 要记要背 增广矩阵 异乘变零定理 某行&#xff08;…

【面试干货】Object 类中的公共方法详解

【面试干货】Object 类中的公共方法详解 1、clone() 方法2、equals(Object obj) 方法3、hashCode() 方法4、getClass() 方法5、wait() 方法6、notify() 和 notifyAll() 方法 &#x1f496;The Begin&#x1f496;点点关注&#xff0c;收藏不迷路&#x1f496; 在 Java 中&#…

报工计件工资核算h5开源版开发

报工计件工资核算h5开源版开发 小型计件工资管理系统&#xff0c;支持后台制定工价&#xff0c;核算工资。支持员工H5端报工&#xff0c;和查看工资情况。 H5手机端 支持在线报工&#xff0c;支持查看我的工资。 自定义费用项 在基础计件工资基础上增加扣除和增加项&#xff…

Spring Boot中 CommandLineRunner 与 ApplicationRunner作用、区别

CommandLineRunner 和 ApplicationRunner 是 Spring Boot 提供的两种用于在应用程序启动后执行初始化代码的机制。这两种接口允许你在 Spring 应用上下文完全启动后执行一些自定义的代码&#xff0c;通常用于执行一次性初始化任务&#xff0c;如数据库预填充、缓存预热等。 Co…

基于Vue.js的电商前端模板:Vue-Dashboard-Template的设计与实现

摘要 随着电子商务的飞速发展&#xff0c;前端页面的设计和实现变得愈发重要。本文介绍了一个基于Vue.js的电商前端模板——Vue-Dashboard-Template&#xff0c;旨在提供一个高性能、易扩展的电商平台前端解决方案。该模板遵循响应式设计、模块化、组件化开发等设计原则&#…

Python面试宝典第1题:两数之和

题目 给定一个整数数组 nums 和一个目标值 target&#xff0c;找出数组中和为目标值的两个数的索引。可以假设每个输入只对应唯一的答案&#xff0c;且同样的元素不能被重复利用。比如&#xff1a;给定 nums [2, 7, 11, 15] 和 target 9&#xff0c;返回 [0, 1]&#xff0c;因…

axios二次封装(详细+跨域问题)

一&#xff0c;为什么要对axios进行二次封装&#xff1f;答&#xff1a;主要是要用到请求拦截器和响应拦截器;请求拦截器&#xff1a;可以在发请求之前可以处理一些业务响应拦截器&#xff1a;当服务器数据返回以后&#xff0c;可以处理一些事情 二&#xff0c;axios的二次封装…

解决VSCode无法用ssh连接远程服务器的问题

原因&#xff1a; 因为windows自带的ssh无法连接远程服务器&#xff0c;需要用git底下的ssh.exe。 搜了很久&#xff0c;试过很多方法&#xff0c;包括替换掉环境变量中的ssh&#xff0c;但是都无效&#xff0c;最后发现是要在VSCode中配置需要使用哪个ssh.exe。 步骤&#…

Java学习 - 布隆过滤器

前置需求 需求 已经有50亿个电话号码&#xff0c;现在给出10万个电话号码&#xff0c;如何快速准确地判断这些电话号码是否已经存在&#xff1f; 参考方案 通过数据库查询&#xff1a;比如MySQL&#xff0c;性能不行&#xff0c;速度太慢将数据先放进内存&#xff1a;50亿*8字…

【环境配置】ubuntu中 Docker的安装

前言 Docker的使用&#xff0c;一直没有系统的梳理和记录&#xff0c;刚好最近看视频又再次的全面介绍到docker。于是记录下方便后面自己的使用&#xff0c;毕竟安装过程中还是会存在小的不丝滑。 1 Docker的简单介绍 这里的介绍来自于大模型的问答&#xff08;LLM时代的到来&a…

开启网络监控新纪元:免费可视化工具助力网络信息链路拓扑监控大屏

在数字化浪潮汹涌的今天&#xff0c;网络已成为我们生活、工作的不可或缺的一部分。然而&#xff0c;你是否曾经想过&#xff0c;在这个庞大的网络世界中&#xff0c;是谁在默默守护着每一条信息的传输&#xff0c;确保我们的数据安全、稳定地抵达目的地&#xff1f; 网络信息链…

【力扣高频题】004.两个正序数组的中位数

------------------ 长文警告 ------------------ 4.两个正序数组的中位数 给定两个大小分别为 m 和 n 的正序&#xff08;从小到大&#xff09;数组 nums1 和 nums2。请你找出并返回这两个正序数组的 中位数 。 算法的时间复杂度应该为 O ( l o g ( m n ) ) O(log(mn)) O…

工业数据分析要用FusionInsight MRS IoTDB ?

随着工业互联网逐步兴起&#xff0c;在加速工业自动化、智能化的同时&#xff0c;也进一步加速工业生产时间序列数据的产生速度。但对于工业生产中的数据分析&#xff0c;仍然存在重复样本多&#xff0c;数据膨胀率大&#xff0c;缺乏专业易用的平台&#xff0c;这些问题成为阻…

NFS文件共享服务搭建

文章目录 NFS介绍特点用途 NFS版本NFS安装0. 安装规划1. 安装NFS服务2. 启动并启用服务3. 创建共享目录4. 配置NFS共享5. 应用NFS配置6. 防火墙设置7. 验证NFS服务8. 客户端挂载9. 验证挂载10. 客户端卸载nfs挂载11. 自动挂载 参考文章 NFS介绍 NFS&#xff08;Network File Sy…