在 TypeScript 中,為了存取元素,或者我們可以說 HTML 元件,我們使用文件物件模型 (DOM)。 DOM 定義了 HTML 和 XML 程式設計接口,將文件結構視覺化為節點樹。段落、按鈕、div、標題等只是樹中每個節點所代表的文件元素的幾個範例。
TypeScript 中的文件物件充當 DOM 的門戶。這意味著我們可以使用 TypeScript 輕鬆存取 DOM 元素。有多種方法可以存取元素,這些是 -
使用 document.querySelector() 方法
使用 document.getElementById() 方法
使用 document.getElementsByClassName() 方法
使用 document.getElementsByTagName() 方法
在本教學中,我們將討論前兩個方法,分別是 document,querySelector() 和 document.getElementById() 方法。
使用 getElementById() 方法
document.getElementById() 方法是最常見的方法,也是 TypeScript 中存取 HTML 元素的主要使用方法。此方法將使用者想要存取的元素的 id 作為參數,並以物件的形式傳回該元素。
例如,如果您有一個 ID 為「myDiv」的 HTML 元素,您可以像這樣在 TypeScript 中存取它 -
文法
let myDiv = <HTMLElement>document.getElementById("myDiv"); //Manipulating the element by setting its innerHTML myDiv.innerHTML = "Hello, World!";
範例
在此範例中,我們有一個 id 為「root」的 HTML div 元素。在腳本中,我們使用 document.getElementById() 方法透過元素的 id 來存取該元素。該方法將字串“root”作為參數,並將元素作為物件傳回。然後我們將此物件分配給變數 root。
我們使用了兩個帶有單擊事件處理程序的按鈕來執行“changeText”和“changeBG”函數。這些函數分別變更元素的innerHTML 文字和背景顏色。由於TypeScript程式碼不能在HTML中使用,因此我們需要先對其進行編譯,然後將編譯後的JavaScript程式碼與HTML一起使用。
打字稿代碼
我們需要在其中編寫 TypeScript 程式碼並進行編譯的檔案。
let root = <HTMLElement>document.getElementById('root') function changeText() { root.innerHTML = 'The text is changed!' } function changeBG() { root.style.background = '#b8f0e5' } </HTMLElement>
HTML 程式碼
HTML 程式碼是我們定義網頁元素的地方。
<html> <body> <h2 id="Access-an-i-Element-i-in-TypeScript">Access an <i>Element</i> in TypeScript</h2> <button onclick="changeText()">Change Text</button> <button onclick="changeBG()">Change Background Color</button> <div id="root" style="padding: 10px; background: #f0ecb8"> This is a Div element! </div> <script> //Compiled TypeScript File var root = document.getElementById('root') function changeText() { root.innerHTML = 'The text is changed!' } function changeBG() { root.style.background = '#b8f0e5' } </script> </body> </html>
如果具有指定 id 的元素不存在,則該方法將傳回 null,因此在操作傳回的元素之前檢查這一點至關重要。
使用querySelector()方法
使用 TypeScript 存取 DOM 元素的另一種方法是使用 querySelector() 和 querySelectorAll() 方法。這些方法透過 CSS 選擇器來選擇元素,類似於 jQuery。
文法
const el = <HTMLElement>document.querySelector('#myDiv');
範例
在此範例中,我們使用 querySelector() 方法透過 TypeScript 存取 HTML 元素。我們採用輸入欄位來提供輸入,並嘗試透過存取輸入欄位和 div 元素在網頁上顯示確切的文字。我們使用 querySelector() 方法並傳遞輸入欄位和 div 元素的 id。我們在輸入欄位上新增了一個輸入事件屬性,以便在使用者對其進行輸入時執行函數。此函數用於存取這兩個元素並將 div 的文字變更為輸入欄位上的確切文字。
<html> <body> <h2 id="Access-an-i-Element-i-in-TypeScript">Access an <i>Element</i> in TypeScript</h2> <h4 id="Enter-your-text">Enter your text:</h4> <input oninput="changeInput()" id="inputField" type="text" /> <div id="root" style="padding: 10px; background: #d5ed9c"></div> <script> //Compiled TypeScript File var root = document.querySelector('#root') var inputField = document.querySelector('#inputField') function changeInput() { root.innerHTML = inputField.value } </script> </body> </html>
輸出
請注意,getElementsByClassName、getElementsByTagName 和 getElementsByName 方法也允許您存取元素,但它們傳回元素集合而不是單一元素。
要在 TypeScript 中存取 HTML 元素,您可以使用文件物件及其各種方法(例如 getElementById、querySelector 和 querySelectorAll)來尋找要存取的元素,然後根據需要進行操作。
以上是存取類型腳本中的元素的詳細內容。更多資訊請關注PHP中文網其他相關文章!

JavaScript在現實世界中的應用包括服務器端編程、移動應用開發和物聯網控制:1.通過Node.js實現服務器端編程,適用於高並發請求處理。 2.通過ReactNative進行移動應用開發,支持跨平台部署。 3.通過Johnny-Five庫用於物聯網設備控制,適用於硬件交互。

我使用您的日常技術工具構建了功能性的多租戶SaaS應用程序(一個Edtech應用程序),您可以做同樣的事情。 首先,什麼是多租戶SaaS應用程序? 多租戶SaaS應用程序可讓您從唱歌中為多個客戶提供服務

本文展示了與許可證確保的後端的前端集成,並使用Next.js構建功能性Edtech SaaS應用程序。 前端獲取用戶權限以控制UI的可見性並確保API要求遵守角色庫

JavaScript是現代Web開發的核心語言,因其多樣性和靈活性而廣泛應用。 1)前端開發:通過DOM操作和現代框架(如React、Vue.js、Angular)構建動態網頁和單頁面應用。 2)服務器端開發:Node.js利用非阻塞I/O模型處理高並發和實時應用。 3)移動和桌面應用開發:通過ReactNative和Electron實現跨平台開發,提高開發效率。

JavaScript的最新趨勢包括TypeScript的崛起、現代框架和庫的流行以及WebAssembly的應用。未來前景涵蓋更強大的類型系統、服務器端JavaScript的發展、人工智能和機器學習的擴展以及物聯網和邊緣計算的潛力。

JavaScript是現代Web開發的基石,它的主要功能包括事件驅動編程、動態內容生成和異步編程。 1)事件驅動編程允許網頁根據用戶操作動態變化。 2)動態內容生成使得頁面內容可以根據條件調整。 3)異步編程確保用戶界面不被阻塞。 JavaScript廣泛應用於網頁交互、單頁面應用和服務器端開發,極大地提升了用戶體驗和跨平台開發的靈活性。

Python更适合数据科学和机器学习,JavaScript更适合前端和全栈开发。1.Python以简洁语法和丰富库生态著称,适用于数据分析和Web开发。2.JavaScript是前端开发核心,Node.js支持服务器端编程,适用于全栈开发。

JavaScript不需要安裝,因為它已內置於現代瀏覽器中。你只需文本編輯器和瀏覽器即可開始使用。 1)在瀏覽器環境中,通過標籤嵌入HTML文件中運行。 2)在Node.js環境中,下載並安裝Node.js後,通過命令行運行JavaScript文件。


熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

AI Hentai Generator
免費產生 AI 無盡。

熱門文章

熱工具

Dreamweaver CS6
視覺化網頁開發工具

SecLists
SecLists是最終安全測試人員的伙伴。它是一個包含各種類型清單的集合,這些清單在安全評估過程中經常使用,而且都在一個地方。 SecLists透過方便地提供安全測試人員可能需要的所有列表,幫助提高安全測試的效率和生產力。清單類型包括使用者名稱、密碼、URL、模糊測試有效載荷、敏感資料模式、Web shell等等。測試人員只需將此儲存庫拉到新的測試機上,他就可以存取所需的每種類型的清單。

PhpStorm Mac 版本
最新(2018.2.1 )專業的PHP整合開發工具

ZendStudio 13.5.1 Mac
強大的PHP整合開發環境

SublimeText3 Linux新版
SublimeText3 Linux最新版