JavaScript- 1.3 DOM對頁面內容進行操作

本系列可作為前端學習系列的筆記,代碼的運行環境是在HBuilder中,小編會將代碼復制下來,大家復制下來就可以練習了,方便大家學習。

HTML和CSS系列文章?已經收錄在前端專欄,有需要的寶寶們可以點擊前端專欄查看!

點贊關注不迷路!您的點贊、關注和收藏是對小編最大的支持和鼓勵!?

系列文章目錄?

JavaScript- 1.1 行內、內部、外部三種引用方式

JavaScript- 1.2?ECMA基本語法和控制流

JavaScript- 1.3 DOM對頁面內容進行操作

JavaScript- 1.4 BOM對瀏覽器進行操作??


目錄

系列文章目錄?

前言

一、DOM操作

1. 訪問DOM元素

2. 修改DOM元素

3. 創建和添加DOM元素

4. 刪除DOM元素

5. 事件處理

6.總結

?二、代碼實踐

總結


前言

小編作為新晉碼農一枚,會定期整理一些寫的比較好的代碼,作為自己的學習筆記,會試著做一下批注和補充,如轉載或者參考他人文獻會標明出處,非商用,如有侵權會刪改!歡迎大家斧正和討論!

一、DOM操作

JavaScript的DOM(Document Object Model,文檔對象模型)操作允許開發者動態地訪問、修改、添加或刪除HTML和XML文檔的內容、結構及樣式。以下是對DOM操作的主要方面的詳細說明:

1. 訪問DOM元素

在操作DOM之前,首先需要獲取到目標元素。JavaScript提供了多種方法來訪問DOM元素:

  • getElementById():通過元素的ID屬性獲取元素。

    javascript

    let element = document.getElementById('elementId');

  • getElementsByClassName():通過類名獲取元素集合。

    javascript

    let elements = document.getElementsByClassName('className');
  • getElementsByTagName():通過標簽名獲取元素集合。

    javascript

    let elements = document.getElementsByTagName('div');
  • querySelector()?和?querySelectorAll():使用CSS選擇器獲取單個或多個元素。

    javascript

    let element = document.querySelector('#elementId');
    let elements = document.querySelectorAll('.className');

2. 修改DOM元素

獲取到元素后,可以對其進行多種修改:

  • 修改內容
    • textContent:修改元素的文本內容。

      javascript

      element.textContent = 'New text content';
    • innerHTML:修改元素的HTML內容(可以包含HTML標簽)。

      javascript

      element.innerHTML = '<strong>New HTML content</strong>';
  • 修改樣式
    • 通過style屬性直接修改元素的樣式。

      javascript

      element.style.color = 'red';
      element.style.backgroundColor = '#f0f0f0';
  • 修改屬性
    • 使用getAttribute()setAttribute()來獲取和設置元素的屬性。

      javascript

      let value = element.getAttribute('data-value');
      element.setAttribute('data-value', 'newValue');

3. 創建和添加DOM元素

可以動態地創建新的元素并將其添加到DOM中:

  • 創建新元素

    javascript

    let newElement = document.createElement('div');
  • 添加元素

    • appendChild():將元素添加到父元素的末尾。

      javascript

      parentElement.appendChild(newElement);
    • insertBefore():在指定元素之前插入新元素。

      javascript

      parentElement.insertBefore(newElement, referenceElement);

4. 刪除DOM元素

可以使用removeChild()方法來刪除DOM中的元素:

javascript

parentElement.removeChild(childElement);

5. 事件處理

DOM操作還包括對事件的響應,通過事件監聽器來實現用戶交互:

  • 添加事件監聽器

    javascript

    element.addEventListener('click', function() {alert('Element clicked!');
    });

6.總結

通過JavaScript的DOM操作,開發者可以實現對網頁內容的動態控制,這為創建交互式和動態網頁應用提供了強大的工具。通過訪問、修改、創建、刪除元素以及處理事件,開發者可以構建出功能豐富、用戶體驗良好的網頁應用。

?二、代碼實踐

代碼如下:

HTML

<!DOCTYPE html>
<html><head><meta charset="utf-8"><title>DOM對頁面內容進行操作</title></head><body><p id="p1">這是一段文字</p><button type="button" onclick="document.getElementById('p1').style.fontSize='50px'">點擊按鈕改變字號</button></body>
</html>

代碼運行如下:


總結

以上就是今天要講的內容,本文簡單記錄了DOM對頁面內容進行操作,僅作為一份簡單的筆記使用,大家根據注釋理解

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

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

相關文章

CSS-5.1 Transition 過渡

本系列可作為前端學習系列的筆記&#xff0c;代碼的運行環境是在HBuilder中&#xff0c;小編會將代碼復制下來&#xff0c;大家復制下來就可以練習了&#xff0c;方便大家學習。 HTML系列文章 已經收錄在前端專欄&#xff0c;有需要的寶寶們可以點擊前端專欄查看&#xff01; 點…

使用Google 最新發布的veo-3 視頻生成和數字人技術制作介紹核聚變技術的短視頻:《逐夢星海:中國聚變照亮未來》

文章大綱 結合谷歌最新模型說明示例分鏡提示詞(基于 Gemini 2.5)最終視頻生成(基于 Veo3)解說詞文稿應用場景參考文獻先來看看效果: 視頻中混入了一些字幕,看來Google的技術還有待提高哈,里面有的托卡馬克好像挺像那么回事!厲害 逐夢星海:中國聚變照亮未來 #mermaid-sv…

服務器數據恢復—Linux系統服務器崩潰且重裝系統的數據恢復案例

服務器數據恢復環境&#xff1a; linux操作系統服務器中有一組由4塊SAS接口硬盤組建的raid5陣列。 服務器故障&#xff1a; 服務器工作過程中突然崩潰。管理員將服務器操作系統進行了重裝。 用戶方需要恢復服務器中的數據庫、辦公文檔、代碼文件等。 服務器數據恢復過程&#…

結構型:門面模式(外觀模式)

目錄 1、核心思想 2、實現方式 2.1 模式結構 2.2 實現案例 3、優缺點分析 4、適用場景 1、核心思想 目的&#xff1a;通過高層接口&#xff08;門面類&#xff09;封裝多個子系統的復雜交互&#xff0c;客戶端只需與門面交互&#xff0c;簡化入口&#xff1b;同時隔離客…

MidJourney生成王昭君全身像提示詞

漢服王昭君全身像&#xff0c;中國水墨融合工筆畫風格&#xff0c;低飽和度暖色調&#xff0c;絹本設質感&#xff1a; 服飾細節&#xff1a;身著朱紅色曲裾深衣&#xff0c;衣擺拖地三層&#xff0c;金線刺繡鳳凰祥云暗紋&#xff0c;寬袖綴珍珠滾邊&#xff0c;腰間白玉組佩…

GitHub 趨勢日報 (2025年05月21日)

本日報由 TrendForge 系統生成 https://trendforge.devlive.org/ &#x1f310; 本日報中的項目描述已自動翻譯為中文 &#x1f4c8; 今日整體趨勢 Top 10 排名項目名稱項目描述今日獲星總星數語言1microsoft/WSLLinux的Windows子系統? 1731? 25184C2virattt/ai-hedge-fundA…

電子電氣架構 --- 細化造車階段流程

我是穿拖鞋的漢子,魔都中堅持長期主義的汽車電子工程師。 老規矩,分享一段喜歡的文字,避免自己成為高知識低文化的工程師: 鈍感力的“鈍”,不是木訥、遲鈍,而是直面困境的韌勁和耐力,是面對外界噪音的通透淡然。 生活中有兩種人,一種人格外在意別人的眼光;另一種人無論…

談談Oracle BUFFER CACHE的命中率

BUFFER CACHE的命中率已成為一個老生常談的話題&#xff0c;在數據庫等待事件出現之前&#xff0c;DBA進行數據庫系統級優化時&#xff0c;往往會首先觀察BUFFER CACHE的命中率。命中率高就意味著數據庫運行正常&#xff0c;很多Oracle官方提供的巡檢腳本都將BUFFER CACHE的命中…

云渲染技術解析與渲酷平臺深度測評:如何實現高效3D創作?

一、云渲染技術核心原理 1.1 分布式計算架構 云渲染的本質是通過多節點并行計算實現效率突破。以動畫渲染為例&#xff0c;一個30秒的動畫通常包含720幀&#xff08;按24幀/秒計算&#xff09;&#xff0c;傳統單機需要連續處理所有幀&#xff0c;而云渲染可將任務拆解為720個…

JavaScript-DOM-02

自定義屬性&#xff1a; ? <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><title>Document</title>…

Kind方式部署k8s單節點集群并創建nginx服務對外訪問

資源要求 請準備好doker環境&#xff0c;盡量用比較新的版本。我的docker環境如下 docker 環境&#xff1a; Docker version 20.10.21, build 20.10.21-0ubuntu1~18.04.3 安裝kind kind表現上就是一個二進制程序&#xff0c;下載對應版本并增加執行權限即可&#xff1a; cu…

MySQL備份恢復:數據安全的終極指南

引言 各位數據庫愛好者們好&#xff01;今天我們要深入探討MySQL數據庫的"生命保險"——備份與恢復策略 &#x1f6e1;?。在數據即資產的時代&#xff0c;任何數據丟失都可能造成災難性后果。本教程將帶你全面掌握從邏輯備份到物理備份&#xff0c;從二進制日志恢復…

id分頁遍歷數據漏行問題

令入參id為0 while(true){ select * from table where id>#{id} order by id asc limit 100; 取結果集中最大id作為下次查詢的入參 其他操作 } 這個算法一般沒問題&#xff0c;但在主從數據系統中&#xff0c;主庫寫&#xff0c;查詢從庫遍歷數據時&#xff0c;出現了…

OpenCV級聯分類器

概念 OpenCV 級聯分類器是一種基于 Haar 特征、AdaBoost 算法和級聯結構的目標檢測方法&#xff0c;通過多階段篩選快速排除非目標區域&#xff0c;實現高效實時檢測&#xff08;如人臉、行人等&#xff09;。 加載級聯分類器 // 加載級聯分類器CascadeClassifier cascade;// …

C++ inline 內聯函數

一、定義與設計初衷 inline 函數是 C 中通過 減少函數調用開銷 優化程序效率的機制。其核心設計初衷是 取代 C 語言中宏定義&#xff08;#define&#xff09;&#xff0c;同時解決宏的以下缺陷&#xff1a; 類型安全問題&#xff1a;宏僅進行文本替換&#xff0c;無法進行參數…

uniapp-商城-64-后臺 商品列表(商品修改---頁面跳轉,深淺copy應用,遞歸調用等)

完成了商品的添加和展示&#xff0c;下面的文字將繼續進行商品頁面的處理&#xff0c;主要為商品信息的修改的頁面以及后天邏輯的處理。 本文主要介紹了商品信息修改頁面的實現過程。首先&#xff0c;頁面布局包括編輯和刪除功能&#xff0c;未來還可添加上架和下架按鈕。通過c…

digitalworld.local: VENGEANCE靶場

1&#xff0c;將兩臺虛擬機網絡連接都改為NAT模式 2&#xff0c;攻擊機上做namp局域網掃描發現靶機 nmap -sn 192.168.23.0/24 那么攻擊機IP為192.168.23.182&#xff0c;靶場IP192.168.23.3 3&#xff0c;對靶機進行端口服務探測 nmap -sV -T4 -p- -A 192.168.23.3 端口號 協…

微店平臺店鋪商品接口開發指南

微店API獲取店鋪所有商品實現方案 以下是使用微店開放平臺API獲取店鋪所有商品的完整實現代碼&#xff0c;包含請求封裝、分頁處理和錯誤處理機制。 點擊獲取key和secret from weidian_api import WeidianAPI # 配置你的微店應用憑證 APP_KEY "your_app_key" APP_…

Proxmox 主機與虛擬機全部斷網問題排查與解決記錄

Proxmox 主機與虛擬機全部斷網問題排查與解決記錄 關鍵詞&#xff1a;Proxmox、e1000e、板載網卡、斷網、網絡橋接、Hardware Unit Hang、網卡掛死 背景 近期在使用 Proxmox VE 管理服務器時&#xff0c;遇到一個奇怪的問題&#xff1a;每當在某個虛擬機中執行某些操作&#x…

SpringBoot整合MQTT實戰:基于EMQX構建高可靠物聯網通信,從零到一實現設備云端雙向對話

一、引言 隨著物聯網(IoT)技術的快速發展&#xff0c;MQTT(Message Queuing Telemetry Transport)協議因其輕量級、低功耗和高效的特點&#xff0c;已成為物聯網設備通信的事實標準。本文將詳細介紹如何使用SpringBoot框架整合MQTT協議&#xff0c;基于開源MQTT代理EMQX實現設…