JavaWeb系列十九: jQuery的DOM操作 上

查找節點, 修改屬性

查找屬性節點: 查找到所需要的元素之后, 可以調用jQuery對象的attr()方法用來 設置/返回 它的各種屬性值

  • 設置屬性值 $(“img”).attr(“width”, “300”);
  • 返回屬性值 $(“img”).attr(“width”);

在這里插入圖片描述

創建節點

  1. 創建節點: 使用jQuery的工廠函數$(): $(html標簽); 會根據傳入的html標記字符串創建一個jQuery對象并返回.
  2. 動態創建的新元素節點不會自動地添加到文檔中, 而是需要使用其它方法將其插入到文檔中
  3. 當創建單個元素時, 需要注意閉合標簽和使用標準的XHTML格式. 例如創建一個<p>元素, 可以使用$(“<p/>”)或者$(“<p></p>”), 但不能使用$(“<p>”)或$(“</p>”)
  4. 創建文本節點就是在創建元素節點時直接把文本內容寫出來; 創建屬性節點也是在創建元素節點時一起創建

第1組方法(內部插入法)

  1. append(content): 向每個匹配的元素的內部的結尾處追加內容
    A.append(B) 解讀: (1) A, B都是Jquery對象; (2) 表示把B對象插入到A對象內部的結尾處; (3) 結果是: B對象成為了A對象的子元素/子節點
  2. appendTo(content): 將每個匹配的元素追加到指定元素中的內部結尾處
    A.appendTo(B) 解讀: (1) A, B都是Jquery對象; (2) 表示把A對象插入到B對象內部的結尾處; (3) 結果是: A對象成為了B對象的子元素/節點
  3. prepend(content): 向每個匹配的元素的內部的開始處插入內容
    A.prepend(B) 解讀: (1) A, B都是Jquery對象; (2) 表示把B對象插入到A對象內部的開始處; (3) 結果是: B對象成為了A對象的子元素/節點
  4. prependTo(content): 將每個匹配的元素插入到指定元素中的內部開始處
    A.prependTo(B) 解讀: (1) A, B都是Jquery對象; (2) 表示把A對象插入到B對象內部的開始處; (3) 結果是: A對象成為了B對象的子元素/節點

總結: 內部插入法是在元素內插入內容(該內容成為該元素的子元素或子節點)

第2組方法(外部插入法)

  1. after(content): 在每個匹配的元素之后插入內容
    A.after(B) 解讀: A, B都是Jquery對象; (2) 把B對象插入到A對象的后面; (3) 結果是: B對象成為A對象的兄弟節點
  2. before(content): 在每個匹配的元素之前插入內容
    A.before(B) 解讀: A, B都是Jquery對象; (2) 把B對象插入到A對象的前面; (3) 結果是: B對象成為A對象的兄弟節點
  3. insertAfter(content): 把所有匹配的元素插入到另一個指定的元素集合的后面
    A.insertAfter(B) 解讀: (1) A, B都是Jquery對象; (2) 把A對象插入到B對象的后面; (3) 結果是: A對象成為B對象的后一個兄弟節點
  4. insertBefore(content): 把所有匹配的元素插入到另一個指定的元素集合的前面
    A.insertBefore(B) 解讀: (1) A, B都是Jquery對象; (2) 把A對象插入到B對象的前面; (3) 結果是: A對象成為B對象的前一個兄弟節點

總結: 外部插入法是在元素的外面插入內容(其內容變為元素的兄弟節點)
注意: 以上方法不但能將新的DOM元素插入到文檔中, 也能對原有的DOM元素進行移動

<!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 () {//添加重慶li到上海后面(用傳統的dom方式)$("#btn1").click(function () {//1.創建重慶li元素var cq_li = document.createElement("li");//2.設置屬性和內容cq_li.setAttribute("id", "cq");cq_li.setAttribute("name", "chongqing");cq_li.innerText = "重慶";//3.添加到指定元素的后面var sh_li = document.getElementById("sh");sh_li.append(cq_li);});//添加重慶li到上海后面(jquery完成節點添加)$("#btn2").click(function () {var $cq_li = $("<li id='cq' name='chongqing'>重慶</li>");//內部插入法, 相當于<li id="sh" name="shanghai">上海<li id='cq' name='chongqing'>重慶</li></li>$cq_li.appendTo($("#sh"));//外部插入法, 更合適$cq_li.insertAfter($("#sh"));});//添加濟寧li到北京前(jquery完成節點添加)$("#btn3").click(function () {//創建濟寧livar $jn_li = $("<li id='jn' name='jiNing'>濟寧</li>");//添加到北京li前面, 此時不能使用內部插入法, 必須使用外部插入法, 不信看效果// $("#bj").prepend($jn_li);$jn_li.insertBefore($("#bj"));});//添加成都li到北京和上海之間(jquery完成節點添加)$("#btn4").click(function () {//創建成都livar $cd_li = $("<li id='cd' name='chengdu'>成都</li>");// $cd_li.insertAfter($("#bj"));$cd_li.insertBefore($("#sh"));})//添加成都li到吉林前面(jquery完成節點添加)$("#btn5").click(function () {//創建成都livar $cd_li = $("<li id='cd' name='chengdu'>成都</li>");$cd_li.insertBefore($("#jl"));})})</script>
</head>
<body>
<ul id="city"><li id="bj" name="beijing">北京</li><li id="sh" name="shanghai">上海</li><li id="jl" name="jilin">吉林</li><li id="xj" name="xinjiang">新疆</li>
</ul>
<input type="button" id="btn1" value="添加重慶li到上海后面(用傳統的dom方式)">
<input type="button" id="btn2" value="添加重慶li到上海后面(jquery完成節點添加)">
<input type="button" id="btn3" value="添加濟寧li到北京前(jquery完成節點添加)">
<input type="button" id="btn4" value="添加成都li到北京和上海之間(jquery完成節點添加)">
<input type="button" id="btn5" value="添加成都li到吉林前面(jquery完成節點添加)">
</body>
</html>

移動節點

<!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 () {//使用aflter插入法, 把地下城li移動到穿越火線后面$("#btn1").click(function () {//(1)使用外部插入法, 把地下城li移動到穿越火線后面(推薦)$("#dnf").insertAfter($("#jl"));//(2)使用內部插入法, 把地下城li移動到穿越火線后面(不推薦)$("#dnf").appendTo($("#jl"));});})</script>
</head>
<body>
您喜歡的城市:
<ul id="city"><li id="bj" name="beijing">北京</li><li id="sh" name="shanghai">上海</li><li id="jl" name="jilin">吉林</li>
</ul>
您愛好的游戲:
<ul id="game"><li id="dnf" name="dnf">地下城</li><li id="cf" name="cf">穿越火線</li>
</ul>
<input type="button" id="btn1" value="使用aflter插入法, 把地下城li移動到穿越火線后面">
</body>
</html>

刪除節點

  1. remove(): 從DOM中刪除所有匹配的元素, 傳入的參數用于根據jQuery表達式來篩選元素. 當某個節點用remove()方法刪除后, 該節點所包含的所有后代節點將被同時刪除. 這個方法的返回值是一個指向已被刪除的節點的引用
  2. empty(): 清空節點 - 清空元素中的所有后代節點(包括文本節點, 但不包含屬性節點)
<!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 () {//刪除所有<p>元素$("#btn1").click(function () {$("p").remove();//這不是jquery方法});//所有p清空$("#btn2").click(function () {$("p").empty();});//刪除上海這個li$("#btn3").click(function () {//這個是完全移除$("#sh").remove();//這個會保留<li id="sh" name="shanghai"></li>$("#sh").empty();})});</script>
</head>
<body>
您喜歡的城市:
<ul id="city"><li id="bj" name="beijing">北京</li><li id="sh" name="shanghai">上海</li><li id="jl" name="jilin">吉林</li>
</ul>
<p>你好 </p> 刀劍神域 <p>亞絲娜</p>
<p name="test">你好 <span>刀劍神域</span> <a>桐谷和人</a></p>
<input type="button" id="btn1" value="刪除所有<p>元素">
<input type="button" id="btn2" value="所有p清空">
<input type="button" id="btn3" value="刪除上海這個li">
</body>
</html>

復制節點

  1. clone(): 克隆匹配的DOM元素, 返回值為克隆后的副本, 但此時復制的新節點不具有任何行為, 也就是說它沒有把事件復制過來
  2. clone(true): 復制元素的同時也復制元素中的事件
<!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 () {//點擊p, 彈出文本信息$("p").click(function () {//隱式的傳入一個this->p的dom對象alert("段落的內容=" + $(this).text());})//克隆p, 插入到按鈕后面//1.$("p").clone() 表示克隆p元素, 但沒有復制事件$("p").clone().insertAfter($("button"));//2.$("p").cloine() 表示克隆p元素, 同時復制事件$("p").clone(true).insertAfter($("button"));});</script>
</head>
<body>
<button>保存</button>
///
<p>段落1</p>
<p>段落2</p>
<p>段落3</p>
<p>段落4</p>
<p>段落5</p>
</body>
</html>

替換節點

  1. replaceWith(): 將所有匹配的元素都替換為指定的HTML或DOM元素.
    A.replaceWith(B) 用B來替換A(這里的B可以是HTML元素或DOM元素)
  2. replaceAll(): 顛倒了的replaceWith()方法
    A.replaceAll(B) 用A去替換B(這里的A只能是DOM元素, B一般是DOM元素, 還未遇到是HTML元素的情況)

注意: 若在替換之前, 已經在元素上綁定了事件, 替換后原先綁定的事件會與原先的元素一起消失

<!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 () {//1.將p元素替換為button元素(HTML或DOM元素)// (1)$("p").replaceWith("<button>亞絲娜</button>");// (2)var $button = $("<button value='亞絲娜'>亞絲娜</button>");$button.click(function () {alert($(this).val());})$("p").replaceWith($button);// (3)$button.replaceAll($("p"));//2.將p元素替換為超鏈接// (1)$("p").replaceWith("<a href='http://www.baidu.com'>超鏈接</a>");// (2)var $a = $("<a href='http://www.baidu.com'>超鏈接</a>");$("p").replaceWith($a);// (3)$a.replaceAll($("p"));});</script>
</head>
<body>
<h1>節點替換</h1>
<p>你好</p>
<p>刀劍神域</p>
<p>亞絲娜</p>
</body>
</html>

屬性操作

  1. attr(): 獲取屬性和設置屬性
  2. attr() 傳遞一個參數時, 表示獲取某個元素指定的屬性
  3. attr() 傳遞兩個參數時, 表示為某個元素設置指定屬性的值
  4. jQuery中有很多方法都是一個函數實現獲取和設置. 比如: attr(), html(), text(), val(), height(), width(), css()等.

示例: var $button = $(“<button><span>亞絲娜</span></button>”);
alert($button.text()): -> 亞絲娜
alert($button.html()): -> <span>亞絲娜</span>
$(this).text(“桐人”); -> button標簽會變成 <button>桐人</button>
$(this).html(“桐人”); -> button標簽會變成 <button><span>桐人</span></button>

  1. removeAttr(): 刪除指定元素的屬性

樣式操作

  1. 獲取class和設置class: class是元素的一個屬性, 所以獲取class和設置lass都可以使用attr()方法來完成
  2. 追加樣式: addClass()
  3. 移除樣式: removeClass() — 從匹配的元素中刪除全部或指定的class
  4. 切換樣式: toggleClass() — 控制樣式上的重復切換. 如果類名存在則刪除它, 如果類名不存在則添加它
  5. 判斷是否具有某個樣式: hasClass() — 判斷元素中是否含有某個class. 如果有, 返回true; 如果沒有,返回false
<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>樣式操作</title><style>input {height: 40px;margin-top: 5px;}div {width: 200px;height: 200px;margin: 20px;float: left;}.one {background-color: pink;}</style><script type="text/javascript" src="../script/jquery-3.6.0.min.js"></script><script type="text/javascript">$(function () {//1.獲取class和設置class都可以使用attr()方法來完成--給id為first的元素添加.one樣式$("#btn01").click(function () {$("#first").attr("class", "one");})//2.追加樣式: addClass()--給id為first的元素添加.one樣式$("#btn02").click(function () {$("#first").addClass("one");})//3.移除樣式: removeClass()--從匹配的元素中刪除全部或指定的樣式$("#btn03").click(function () {$("#first").removeClass("one");})//4.切換樣式: toggleClass()--給id為first的元素切換.one樣式(如果類名存在就刪除, 如果類名不存在就添加)$("#btn04").click(function () {$("#first").toggleClass("one");})//5.判斷是否含有某個樣式: hasClass()--判斷元素中是否含有某個class.如果有,返回true;如果沒有,返回false$("#btn05").click(function () {alert($("#first").hasClass("one"));})});</script>
</head>
<body>
<input type="button" value="獲取class和設置class都可以使用attr()方法來完成--給id為first的元素添加.one樣式" id="btn01"/><br/>
<input type="button" value="追加樣式: addClass()--給id為first的元素添加.one樣式" id="btn02"/><br/>
<input type="button" value="移除樣式: removeClass()--從匹配的元素中刪除全部或指定的樣式" id="btn03"/><br/>
<input type="button" value="切換樣式: toggleClass()--給id為first的元素切換.one樣式" id="btn04"/><br/>
<input type="button" value="判斷是否含有某個樣式: hasClass()--判斷元素中是否含有某個class.如果有,返回true;如果沒有,返回false" id="btn05"/><br/>
<div id="first">first</div>
<div id="second">second</div>
</body>
</html>

獲取html 文本和值

  1. 設置或返回所選元素的內容(包括HTML標記): html()
  2. 讀取或設置所選元素的文本內容: text(). 該方法既可以用于HTML也可以用于XML文檔
  3. 讀取或設置某個元素的值: val(). 該方法類似JavaScript中的value屬性, 對于文本框input, 下拉框select, 單選框radio, 該方法可以返回元素的值

this.defaultValue: 表單元素的默認值屬性(this是dom對象, 不是Jquery對象)

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>val()練習</title><script type="text/javascript" src="../script/jquery-3.6.0.min.js"></script><script type="text/javascript">$(function () {//1.給btn01綁定一個獲取焦點事件//  當用戶把光標定位到輸入框btn01時, 該事件就會被觸發$("#btn01").focus(function () {//獲取->判斷//獲取到當前值var currentVal = $(this).val();//如果當前值就是默認值, 就清空, 讓用戶輸入自己的值if (currentVal == this.defaultValue) {$(this).val('');}})//2.給btn01綁定一個失去焦點事件//  當用戶的光標離開輸入框, 就會觸發該事件$("#btn01").blur(function () {//獲取當前值var currentVal = $(this).val();//如果當前值為'',說明用戶沒有輸入內容//就恢復顯示默認信息if (currentVal == '') {$(this).val(this.defaultValue);}})});</script>
</head>
<body>
<input type="text" value="用戶郵箱/手機號/用戶名" id="btn01"/><br/>
<input type="password" value="" id="btn02"/><br/>
<input type="button" value="登錄" id="btn03"/>
</body>
</html>

🌳常用遍歷節點方法

常用遍歷節點方法

  1. 取得匹配元素的所有子元素組成的集合: children() . 該方法只考慮子元素而不考慮任何后代元素(隔代元素不考慮)
  2. $(selector).find(filter)方法返回被選元素的后代元素, 包括直接子元素
  3. 取得匹配元素后面的同輩元素的集合: next()(緊鄰)/nextAll()(所有)
  4. 取得匹配元素前面的同輩元素的集合: prev()(緊鄰)/prevAll()(所有)
  5. 取得匹配元素前后所有的同輩元素: siblings()
  6. 獲取指定的第幾個元素: nextAll().eq(index)
  7. 對獲取到的同輩元素進行過濾 nextAll().filter(“標簽”)
  8. 取得匹配元素的直接父元素: parent()
  9. 取得匹配元素的所有祖先元素: parents(“元素標簽”)
    參考👉
<html lang="en">
<head><meta charset="UTF-8"><title>遍歷元素</title><style>input[type=button] {height: 30px;}</style><script type="text/javascript" src="script/jquery-3.6.0.min.js"></script><script type="text/javascript">$(function () {//1.查找class為one的div元素的所有子元素$("#btn01").click(function () {$("div.one").children().each(function () {alert("子div的內容是= " + $(this).text());})//獲取指定第幾個子元素, eq(1), 表示獲取第2個子元素(索引從0開始)alert($("div.one").children().filter("div").eq(1).text());})//2.查找class為one的div元素的class為five的后代元素$("#btn02").click(function () {alert($("div.one").find("div:eq(5)").text());})//3.獲取后面的同輩div元素(class為one的div元素)$("#btn03").click(function () {$("div.one").nextAll().filter("div").each(function () {alert("后面同輩的div的內容是= " + $(this).text());})//獲取指定第幾個元素, eq(1), 表示獲取第2個子元素(索引從0開始)alert($("div.one").nextAll().filter("div").eq(1).text());//如果我們希望獲取后面緊鄰的同輩元素alert("后面緊鄰的同輩元素= " + $("div.one").next().text());});//4.獲取前面的同輩div元素(class為one的div元素)$("#btn04").click(function () {$("div.one").prevAll().filter("div").each(function () {alert("前面同輩的div的內容是= " + $(this).text());})//規則: 越靠近$(this)元素,索引越小; 反之越遠離, 索引越大//獲取前一個緊鄰的元素: eq(0), 表示獲取第1個子元素(索引從0開始)alert($("div.one").prevAll().filter("div").eq(0).text());//如果我們希望獲取前面緊鄰的同輩元素alert("前面緊鄰的同輩元素= " + $("div.one").prev().text());});//5.獲取所有同輩的div元素(class為one的div元素)$("#btn05").click(function () {$("div.one").siblings().filter("div").each(function () {alert("所有同輩的div的內容是= " + $(this).text());});//獲取第幾個元素, eq(2), 表示獲取第3個子元素(索引從0開始)alert($("div.one").siblings().filter("div").eq(2).text());})//6.獲取父元素及祖先元素(class為five的div元素)$("#btn06").click(function () {//(1)獲取父元素: 匹配元素集合中每個元素的直接父元素var $div = $("div.five").parent();//返回的是一個對象alert($div.html());//獲取父元素的父元素, 返回的是一個對象var parent = $("div.five").parent().parent();//獲取到了class="one"的祖先元素alert(parent.attr("class"));//(2)獲取祖先元素: 返回的是一個數組, 當前匹配元素的所有祖先元素, 包括父元素var parents = $("div.five").parents("div");parents.each(function () {//獲取到了id=five, class=one的元素alert($(this).html());})})})</script>
</head>
<body>
<input type="button" value="查找class為one的div元素的所有子元素" id="btn01"/><br/>
<input type="button" value="查找class為one的div元素的class為five的后代元素" id="btn02"/><br/>
<input type="button" value="獲取后面的同輩div元素(class為one的div元素)" id="btn03"/><br/>
<input type="button" value="獲取前面的同輩div元素(class為one的div元素)" id="btn04"/><br/>
<input type="button" value="獲取所有的同輩div元素(class為one的div元素)" id="btn05"/><br/>
<input type="button" value="獲取父元素及祖先元素(class為five的div元素)" id="btn06"/><br/>
<hr/>
<div>aaaaaaaaaaaa</div>
<div class="one"><div id="one">xxxxxxxx one</div><div id="two">xxxxxxxx two</div><div id="three">xxxxxxxx three</div><div id="four">xxxxxxxx four</div><div id="five">xxxxxxxx five_01<div class="five">xxxxxxxx five_02</div></div>
</div>
<div>bbbbbbbbbbbb</div>
<div>cccccccccccc</div>
<div>dddddddddddd</div>
</body>
</html>

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/diannao/35052.shtml
繁體地址,請注明出處:http://hk.pswp.cn/diannao/35052.shtml
英文地址,請注明出處:http://en.pswp.cn/diannao/35052.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

硬核實力再亮,玩出夢想科技發布全球首款安卓系統空間計算機

6月25日&#xff0c;玩出夢想科技在新加坡召開全球新品發布會&#xff0c;正式發布全球首款安卓系統空間計算機——玩出夢想MR&#xff0c;填補了空間計算機在安卓生態的空白。 作為品牌沉淀兩年的破曉之作&#xff0c;玩出夢想MR以業內領先軟硬件配置&#xff0c;強大自研算法…

刪除win10未激活水印

通過終止進程來刪除水印 remove.batecho off taskkill /F /IM explorer.exe explorer.exe exit右鍵管理員執行重啟

解決了!暗影精靈8 Pro酷睿版無聲音,揚聲器和麥克風都沒有聲音!

困擾好幾天的問題解決了&#xff01; 暗影精靈8 Pro酷睿版無聲音&#xff0c;揚聲器和麥克風都沒有聲音&#xff01;&#xff01;方法適用于OMEN by HP Gaming Laptop 16-k0xxx&#xff08;暗影精靈8 Pro酷睿版&#xff09;的Windows 10聲卡驅動&#xff01; 朋友們&#xff…

【應用開發一】LED開發

文章目錄 1應用層控制外設的兩種方式2 sysfs和/sys關系3 LED控制方式3.1 基本情況3.2 LED屬性文件介紹3.3 命令行屬性測試3.4 led程序3.5 開發板上測試 1應用層控制外設的兩種方式 使用設備文件控制 在Linux系統下&#xff0c;一切皆是文件。應用層控制底層硬件同樣也是通過文…

如何在 Linux 上安裝 Docker Desktop

如何在 Linux 上安裝 Docker Desktop Docker 是一個用于開發、部署和運行應用程序的開放平臺。Docker Desktop 是 Docker 在 macOS 和 Windows 上的官方客戶端&#xff0c;現在也支持 Linux 系統。本文將詳細介紹如何在 Linux 上安裝 Docker Desktop。 系統要求 在開始安裝之…

第100+12步 ChatGPT學習:R實現KNN分類

基于R 4.2.2版本演示 一、寫在前面 有不少大佬問做機器學習分類能不能用R語言&#xff0c;不想學Python咯。 答曰&#xff1a;可&#xff01;用GPT或者Kimi轉一下就得了唄。 加上最近也沒啥內容寫了&#xff0c;就幫各位搬運一下吧。 二、R代碼實現KNN分類 &#xff08;1&a…

【Docker】Consul 和API

目錄 一、Consul 1. 拉取鏡像 2. 啟動第一個consul服務&#xff1a;consul1 3. 查看consul service1 的ip地址 4. 啟動第二個consul服務&#xff1a;consul2&#xff0c; 并加入consul1&#xff08;使用join命令&#xff09; 5. 啟動第三個consul服務&#xff1a;consul3&…

攻擊者開始使用 XLL 文件進行攻擊

近期&#xff0c;研究人員發現使用惡意 Microsoft Excel 加載項&#xff08;XLL&#xff09;文件發起攻擊的行動有所增加&#xff0c;這項技術的 MITRE ATT&CK 技術項編號為 T1137.006。 這些加載項都是為了使用戶能夠利用高性能函數&#xff0c;為 Excel 工作表提供 API …

【SQL Server數據庫】關系模式與關系代數

目錄 一、請用關系代數完成下列查詢 1. 求 供應工程J1 零件P1的供應商號碼SNO&#xff1b; 2. 求 供應工程J1 零件&#xff08;P&#xff09;為紅色 的供應商號碼SNO&#xff1b; 3. 求 沒有使用 天津供應商&#xff08;P&#xff09;生產的紅色零件&#xff08;S&#xff0…

【雜記-淺談OSPF協議之RouterDeadInterval死區間隔】

OSPF協議之RouterDeadInterval死區間隔 一、RouterDeadInterval概述二、設置RouterDeadInterval三、RouterDeadInterval的重要性 一、RouterDeadInterval概述 RouterDeadInterval&#xff0c;即路由器死區間隔&#xff0c;它涉及到路由器如何在廣播網絡上發現和維護鄰居關系。…

pycharm中的使用技巧

1、更改主題&#xff1a;找到設置&#xff0c;然后更改主題 點擊選擇自己喜歡的主題&#xff0c;然后就可以更改主題了 2、設置字體的快捷鍵 找到設置&#xff0c;如下&#xff1a; 找到increase&#xff0c;如下&#xff1a; 右鍵選擇&#xff0c;增加字體快捷鍵 按住ctrl滑輪…

Excel 查找后隱去右邊列

Excel 有幾列數字 ABC11002042002202100102326027010841199100512100100 當給定參數時&#xff0c;請從每行找到該參數&#xff0c;隱去右邊的列。如果某行不含該參數&#xff0c;則隱去整行。當參數是 100 時&#xff0c;結果如下&#xff1a; ABC710082021009119910010121…

shell之免交互

免交互 交互&#xff1a;發出指令控制指令的運行&#xff0c;程序再接收到指令的效果做出對應的反應。 免交互&#xff1a;間接的&#xff0c;通過第三方的方式把指令傳送給程序&#xff0c;不用直接的下達指令 Hhere Document 免交互 這是命令行格式&#xff0c;也可以寫在腳本…

QTableWidget的使用

使用QTableWidget&#xff0c;初始化數據、設置列頭及格式&#xff0c;設置行數&#xff0c;設置每個單元格的編輯&#xff0c;間隔行底色變換、行選擇 &#xff0c;模式&#xff0c;單元格選擇模式、插入行 、追加行、刪除行&#xff0c;單元格加圖標&#xff0c;單元格顯示ch…

Android Gradle開發與應用

Android Gradle 開發是指在 Android 應用開發中使用 Gradle 作為構建工具的過程。Gradle 是一個基于 Groovy 的自動化構建工具&#xff0c;它允許開發者定義靈活的構建邏輯&#xff0c;并且能夠很好地與 Android Studio 集成。以下是一些關于 Android Gradle 開發與應用的基本概…

替換特殊符號

content content.replaceAll("[\\x00-\\x09\\x11\\x12\\x14-\\x1F\\x7F]", ""); 打印特殊符號&#xff1a; String s new String( Character.toChars(0)); System.out.println((char)0); 2024-06-20 17:21:26.155 ERROR 5584 --- [6884333_inbound] c.…

好記性不如爛筆頭(三)——文件保存后打開呈現亂碼問題

現象 請隨博主進行下列操作&#xff0c;神奇的事情會發生—— 1、新建記事本&#xff0c;里面輸入“同”字&#xff0c;保存為ANSI格式 2、再次打開會發現&#xff0c;“同”已經變成了亂碼 3、類似的字還有很多&#xff0c;例如“同學”的“學”。而有些字則不會出現這種情況…

3_電機的發展及學習方法

一、電機組成及發展 1、什么是勵磁&#xff1f; 在電磁學中&#xff0c;勵磁是通過電流產生磁場的過程。 發電機或電動機由在磁場中旋轉的轉子組成。磁場可以由 永磁體或勵磁線圈產生。對于帶有勵磁線圈的機器&#xff0c;電流必須在線圈中流動才能產生&#xff08;激發&#x…

香港服務器托管對外貿行業必要性和優勢

在當今全球化的經濟環境下&#xff0c;外貿企業面臨著前所未有的機遇與挑戰。其中&#xff0c;服務器托管的選擇對于外貿企業的運營效率和市場拓展具有舉足輕重的作用。香港服務器&#xff0c;憑借其獨特的地理位置、優質的網絡環境和卓越的服務性能&#xff0c;一直是外貿企業…

“Hello, World” 的歷史

“Hello, World!” —— 初學者進入編程世界的第一步 由布萊恩柯林漢 撰寫的“Hello, world”程序 (1978年) 布萊恩W.克尼漢&#xff08;Brian W. Kernighan&#xff09;—— Unix 和 C 語言背后的巨人 布萊恩W.克尼漢 布萊恩W.克尼漢在 1942 年出生在加拿大多倫多&#xff…