在TypeScript中访问元素

在TypeScript中访问元素

在TypeScript中,要访问一个元素,或者我们可以说HTML组件,我们使用文档对象模型(DOM)。 DOM定义了一个HTML和XML编程接口,将文档的结构可视化为节点树。段落、按钮、div、标题等只是树中每个节点所代表的一些文档元素的示例。

TypeScript中的document对象作为访问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代码

需要编写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>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。我们在输入字段上添加了一个on-input事件属性,以便在用户对其进行输入时执行一个函数。这个函数用于访问这两个元素,并将div的文本更改为输入字段上的精确文本。

<html>
   <body>
      <h2>Access an <i>Element</i> in TypeScript</h2>
      <h4>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元素,您可以使用document对象及其各种方法,如getElementById、querySelector和querySelectorAll,来查找您想要访问的元素,然后按需操作它。

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程