web學習筆記(二十三)

目錄

1.增加節點

1.1document.write

1.2innerHTML

1.3動態添加??

1.4追加和插入節點

2.刪除、克隆、替換節點

2.1刪除節點

2.2克隆節點

2.3替換節點

3.事件

3.1什么是事件

3.2事件三要素

3.3事件的種類

3.4常見事件名稱(類型)匯總

4.操作元素的屬性

4.1修改和獲取屬性三種方法匯總

4.2常用DOM屬性匯總

4.3改變元素內容

4.4表單元素的屬性操作

4.5樣式屬性操作


1.增加節點

1.1document.write

document.write('?標簽名 ');

document.write('<h3></h3>');

1.2innerHTML

節點.innerHTML='?標簽名 ';

這種方式有覆蓋性, 不推薦單獨使用。

1.3動態添加??

var 標記= document.createElement('標簽名');

添加完節點后需要將節點放到指定位置才能被我們正常使用。因此通常將添加語句和追加語句結合使用。

           var b_tr = document.createElement('tr');// 添加trtbody.appendChild(b_tr);// 在tbody里面追加tr

1.4追加和插入節點

(1)追加節點 :?父節點.appendChild(子節點)(向子節點列表的末尾添加新的子節點)

(2)插入節點 父節點.insertBefore(新節點,舊節點);(會將新節點添加在舊節點后面)

2.刪除、克隆、替換節點

2.1刪除節點

父節點.removeChild(子節點)

2.2克隆節點

var cnode=node.cloneNode(true);

括號里面可以寫true或者false,默認是false,true可以把內容一塊克隆了,false只能克隆標簽。

2.3替換節點

?父節點.replaceChild(新節點,已存在的節點)

3.事件

3.1什么是事件

? ? ? ?JavaScript使我們有能力創建動態頁面,而事件是可以被JavaScript偵測到的行為(就是觸發響應機制)。網頁中的每個元素都可以產生某些可以觸發JavaScript的事件,例如,我們可以在用戶點擊某按鈕時產生一個 事件,然后去執行某些操作。

3.2事件三要素

  1. 事件源(觸發事件的元素)。
  2. 事件名稱(類型)
  3. 事件的處理程序(就是一個函數,函數內部寫入這個事件要做什么)。

3.3事件的種類

(1)傳統事件(簡單但不利于團隊合作,和html沒有完全分離,多次添加重復事件會覆蓋)

 ? <button onclick="text1()"></button>

(2)腳本模型----現代事件 ? ?(利于團隊合作,on+事件名稱)

格式:btn.οnclick=function(){}或者

btn.οnclick=show;(此處函數名后不加括號)

? ? ? ? function show(){

? ? ? ? }

  <button id="btn">腳本模型點擊</button><script>function text1() {console.log('單擊事件已被執行');// 此處不建議用document.write('')輸出,頁面會重繪,就不顯示按鈕的存在了}var btn=document.querySelector('#btn');btn.onclick=function(){}// 或者btn.onclick=text1;//注意函數名后不能加括號// 此方法不足的地方,同樣的注冊事件只能添加一次,多次添加會覆蓋</script>

? ? ? ? (3)新事件 ? w3c事件(加同樣注冊事件可以注冊多個監聽器,然后按照多個注冊順序依次執行)

兼容性注冊(綁定、添加)事件解綁(刪除)事件

ie9+

?btn.addEventListenter('click',function(){},false)? 或者 btn.addEventListenter('click',函數名,false)? ?false可以省略,表示冒泡機制

? ? ? ?

?btn.removeEventListenter('click',函數名);

ie8

?btn.attachEvent('onclick',function(){})

btn.detachEvent('onclick',function(){});

兼容所有版本

btn.οnclick=function(){}

?btn.οnclick=null;

3.4常見事件名稱(類型)匯總

鼠標事件觸發條件
?onclick? 單擊
onmouseover? 鼠標經過(有冒泡機制)
onmouseout? 鼠標離開(有冒泡機制)
onmouseenter? 鼠標進入
onmouseleave? 鼠標離開
? ? ? ? onmousedown ?鼠標按下
? onmousemove ? ?移動鼠標
onmouseup ??釋放鼠標
? ?onfocus ? ?獲取焦點
?onblur ? ?失去焦點

4.操作元素的屬性

4.1修改和獲取屬性三種方法匯總

(1)方法一:

? ? ? ? ?修改:節點對象.屬性名=屬性值;

? ? ? ? ?獲取: ?var 變量=?節點對象.屬性名;

(2)方法二:

? ? ? ? ?修改:節點對象[屬性名]=屬性值;

? ? ? ? ?獲取: ?var 變量=節點對象[屬性名];

(3)方法三:自定義屬性

? ? ? ? ? ? ? ? ? ?節點對象.setAttribute(屬性名,屬性值)

? ? ? ? ? ? ? ? ? ? ?var 變量=? 節點對象.getAttribute(屬性名)

4.2常用DOM屬性匯總

HTML標記的屬性??DOM元素屬性
src、alt、id、style...src、alt、id、style...
classclassName
forhtmlFor

4.3改變元素內容

(1)改變內容(文字)

? ? node.innerText='值'

? ? .innerText這個方法沒有解析標記的能力,對原來的內容有覆蓋性,但它去除html標簽,同時去掉空格和換行。

? ? (2)改變內容和標簽

? ? ?node. innerHTML='值'

? ? innerHTML 對原來的內容有覆蓋性,會將標簽內所有內容都打印出來,包括html標簽,同時保留空格和換行。

4.4表單元素的屬性操作

(1)通過value值來操作

? ? ? ? type='text/password/file/submit/reset'?和多行文本框textarea還有選擇框select可以通過取出value的值來進行操作。如果有value就取value中的值,當 value='' " 取出為空,如果沒有就取出輸入框中的值。

(2)通過checked值來操作?

? ?單選鈕和復選框可以通過checked來操作。eg:??radio.checked=true;? 此時,選中時true,未選中是false.

(3)通過disabled(按鈕是否禁用)值來操作

? ? 按鈕可以設置disabled值來完成一些操作。此時, true是按鈕不可用 ?false 是按鈕可用。

4.5樣式屬性操作

? ? ? 我們可以通過.style和.className這兩種方式來修改元素大小、顏色等樣式。其中element. style是 行內樣式操作。element. className 是類名樣式操作,可以用來修改元素的類名。

(1)設置或修改樣式(只有一種方法)

? ?dom節點.style.樣式名=樣式值;(此時設置的樣式都是行內樣式,優先級比較高)注意:在js里面修改的樣式采用駝峰命名法

element.style.textAlign=center

(2)獲取樣式(兩種方法)

? ? ? 方法一(只能獲取行內樣式):var stylev=dom節點.style.樣式名;

? ? ? 方法二(行內和外部都可以渠道,只讀屬性): window.getComputedStyle(dom節點對象,null).樣式名? ( window.getComputedStyle(dom節點對象,偽類).樣式名可以取到偽類的樣式)

<body><div id="box"></div><script>var box = document.querySelector('#box');box.style.width='200px';box.style.height="200px";box.style.backgroundColor='#333';box.style.margin='auto';var w1=box.style.width;console.log(w1);var h1=window.getComputedStyle(box,null).height;console.log(h1);</script>
</body>

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

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

相關文章

代碼隨想錄算法訓練營第三十四天| 860.檸檬水找零, 406.根據身高重建隊列 ,452. 用最少數量的箭引爆氣球

860.檸檬水找零 - LeetCode 思路&#xff1a; 這個問題比較簡單&#xff0c; 用一個字典bill_dict記錄已經收到的錢已經錢的數量&#xff0c; 然后如果收到五元&#xff0c; 字典中的 bill_dict[5] 1。 收到10元 bill_dict[5] - 1 bill_dict[10] 1 。 麻煩的是收到20元&…

圖像剪輯|Linux|ImageMagick的初步使用--素描,毛玻璃等特效

前言&#xff1a; ImageMagick在圖像剪輯領域的地位基本等同于FFmpeg&#xff0c;和FFmpeg基本一樣&#xff0c;在Linux下使用此工具的原因是該工具可以使用shell腳本批量剪輯&#xff0c;在Windows下就會比較麻煩一些了 那么&#xff0c;本文主要是記錄一下ImageMagick的一些…

論文閱讀:基于超像素的圖卷積語義分割(圖結構數據)

#Superpixel-based Graph Convolutional Network for Semantic Segmentation github鏈接 引言 GNN模型根據節點特征周圍的邊來訓練節點特征&#xff0c;并獲得最終的節點嵌入。通過利用具有不同濾波核的二維卷積對來自附近節點的信息進行整合&#xff0c;給定超像素方法生成的…

汽車上的各種質量:整備質量、總質量、裝載質量、簧上質量

文章目錄 前言一、整備質量二、額定總質量三、額定裝載質量四、簧上質量 總結 前言 一、整備質量 整備質量指的是汽車按照出廠技術條件完全配備&#xff08;包括備胎、工具、各種油水等&#xff09;的質量。汽車的整備質量也就是人們常說的一輛汽車的自重&#xff0c;它的規范…

MATLAB--pie函數繪制復雜分類餅圖(2)--附案例代碼

MATLAB–pie函數繪制復雜分類數據的餅狀圖 目錄 MATLAB--pie函數繪制復雜分類數據的餅狀圖摘要1. 問題描述2. 具體步驟&#xff1a;3. 繪制結果4. 小結 摘要 在數據可視化中&#xff0c;餅狀圖是一種常用的展示分類數據的方式。之前&#xff0c;文章介紹了使用MATLAB繪制餅狀圖…

數據刪除

目錄 數據刪除 刪除員工編號為 7369 的員工信息 刪除若干個數據 刪除公司中工資最高的員工 Oracle從入門到總裁:??????https://blog.csdn.net/weixin_67859959/article/details/135209645 數據刪除 刪除數據就是指刪除不再需要的數據 delete from 表名稱 [where 刪…

群暉Synology Drive服務搭建結合內網穿透實現云同步Obsidian筆記文件夾

&#x1f308;個人主頁: Aileen_0v0 &#x1f525;熱門專欄: 華為鴻蒙系統學習|計算機網絡|數據結構與算法 ?&#x1f4ab;個人格言:“沒有羅馬,那就自己創造羅馬~” #mermaid-svg-ebec69DBjtGk7apF {font-family:"trebuchet ms",verdana,arial,sans-serif;font-siz…

C++字典操作

創建字典 #include<iostream> #include<map> #include<string>using namespace std;int main(){map<string, int> mymap;}賦值 2.1 指定元素賦值 mymap["abc"] 1;2.2 添加鍵值對 mymap.insert(make_pair("bcd", 2));字典的順序…

后端傳給前端的時間字段前端顯示不正確

具體問題是什么呢&#xff0c;就比如我后段有一個字段是TimeStamp類型&#xff0c;從數據庫中查出數據是下面的樣式&#xff1a; 但是前端顯示的是下面的格式&#xff1a; 這個的解決方法還是挺多的&#xff0c;那接下來具體來看看吧~ 第一種&#xff1a; 在application.prop…

Linux使用bcache 將SSD加速硬盤

前言 在Linux下&#xff0c;使用SSD為HDD加速&#xff0c;目前較為成熟的方案有&#xff1a;flashcache&#xff0c;enhanceIO&#xff0c;dm-cache&#xff0c;bcache等&#xff0c;多方面比較以后最終選擇了bcache。 bcache 是一個 Linux 內核塊層超速緩存。它允許使用一個或…

Flink 面試題總結及答案

基礎 state的分類 key state和operate state state 的重分布 Flink狀態管理詳解&#xff1a;Keyed State和Operator List State深度解析 - 掘金 checkpoint 和save point https://zhuanlan.zhihu.com/p/79526638 flink job 的容錯策略 如果在沒有持續消息輸出的情況下&…

19.AUTOSAR MCAL分析(一):Microcontroller Driver

目錄 1. MCAL概述 2. Microcontroller Drivers 2.1 MCU Drivers 2.2 GPT Driver 2.3 WatchDog Driver 2.4 CoreTest 3.小結 <

【短時交通流量預測】基于單層BP神經網絡

課題名稱&#xff1a;基于單層BP神經網絡的短時交通流量預測 版本時間&#xff1a;2023-04-27 代碼獲取方式&#xff1a;QQ&#xff1a;491052175 或者 私聊博主獲取 模型簡介&#xff1a; 城市交通路網中交通路段上某時刻的交通流量與本路段前幾個時段的交通流量有關&…

Android 自定義組件

在 Android 開發中&#xff0c;有時我們需要創建自定義的 UI 組件以滿足特定的需求&#xff0c;這就是 Android 自定義組件的用途。在這篇博客中&#xff0c;我們將介紹如何創建和使用自定義組件&#xff0c;并以一個標題欄組件為例進行說明。 什么是自定義組件&#xff1f; …

【CSP試題回顧】201312-3-最大的矩形

CSP-201312-3-最大的矩形 解題思路 1. 遍歷所有可能的矩形高度&#xff1a; 通過遍歷所有矩形高度來找到最大的矩形&#xff0c;即對每個可能的高度 it&#xff08;從直方圖中的最小高度到最大高度 heightMax&#xff09;&#xff0c;代碼將嘗試找到在這個高度或以上的最長連…

軟件測試相關介紹

什么是軟件測試&#xff1f; 軟件測試&#xff1a;使用技術手段驗證軟件是否滿足使用需求 軟件測試是指通過運行、評估和驗證軟件系統的過程&#xff0c;以確定其是否滿足預期的需求和質量標準。它是軟件開發生命周期中的一個重要環節&#xff0c;旨在發現和修復潛在的缺陷和…

前端錯誤 “TypeError Cannot read properties of undefined (reading ‘xxx‘)

前端錯誤 “TypeError: Cannot read properties of undefined (reading ‘xxx‘) 原因分析及解決 情況一&#xff1a; 出現該錯誤的原因是因為你花括號中的某些屬性未定義。極大可能是因為你寫錯了屬性名稱 情況二&#xff1a; 異步請求獲取數據時&#xff0c;語句可能寫錯&…

Linux操作系統——進程信號

1.信號的概念 生活當中哪些場景算信號呢&#xff1f;比如說你晚上調了個鬧鐘&#xff0c;然后第二天早上你聽到了鬧鐘響了你就知道該起床了&#xff0c;這種機制就叫做信號機制。在生活中我們的信號是非常非常多的&#xff0c;比如說有&#xff1a;紅綠燈&#xff0c;下課鈴聲…

Java中多線程的各種姿勢

在Java中&#xff0c;多線程編程是一種強大的并發編程技術&#xff0c;可以讓你同時執行多個任務。Java提供了多種方式來創建和管理線程。以下是Java中給多線程使用的一些主要方法&#xff1a; 繼承Thread類&#xff1a; 創建一個新的類繼承自Thread類。覆蓋run()方法以定義線程…

爬蟲案例一

首先我舉一個案例比如豆瓣電影排行榜 (douban.com)這個電影&#xff0c;首先我們進去檢查源代碼 說明源代碼有&#xff0c;說明是服務器渲染&#xff0c;可以直接那html 但是返回的結果是空&#xff0c;所以我們需要在頭里面加上User-Agent 然后可以看到有返回的結果&#xff0…