찾다
웹 프론트엔드JS 튜토리얼HTML 속성과 DOM 속성의 차이점은 무엇입니까?

HTML 속성과 DOM 속성의 차이점은 무엇인가요? 이 기사에서는 HTML 속성과 DOM 속성의 차이점을 소개합니다. 필요한 참조 값이 있습니다. DOM 속성과 HTML 요소 속성을 구별하는 것이 도움이 되기를 바랍니다. ; 요소.

마지막으로 브라우저는 HTML을 구문 분석하고 DOM 모델을 구축합니다. 이는 브라우저가 HTML 요소를 DOM 요소로 구문 분석한다는 의미입니다. 자바스크립트에서 얻는 것은 HTML 요소가 아닌 DOM 요소입니다.

HTML 요소 속성과 DOM 속성의 이름과 값은 대부분 동일하므로,

둘이 동일하다고 잘못 생각하는 사람들이 너무 많습니다.

HTML 요소 속성과 DOM 속성을 구별하는 것은 경험과 기억의 테스트였습니다. 이제 jQuery의 속성 조작 함수 attr()은 이러한 차이점을 잊을 수 있습니다.

javascript를 사용하여 DOM 속성을 조작합니다

javascript를 사용하여 DOM 속성을 조작한다는 것은 javascript 객체의 속성을 조작하는 것입니다. JavaScript 개체의 속성은 선언할 필요가 없습니다. 속성에 액세스하는 방법은 다음과 같이 다양합니다.

myImg.src = "xxxxxx" //使用“.”运算符
myImg["src"] = "xxxxxx" // 使用属性访问器
var propName = "src";
myImg[propName] = "xxxxxx" //属性访问器支持变量

속성 접근자가 제공되므로 다음과 같은 방법으로 DOM 객체의 모든 속성을 탐색할 수 있습니다.

var result = "";
for (var p in myImg)
{
result += "属性名:" + p + ",属性值:" + myImg[p] + "\n";
}
이벤트나 함수도 객체의 속성이라는 점에 유의하세요. 객체가 DOM 객체인 경우 기본적으로 많은 속성을 갖습니다.

javascript를 사용하여 HTML 요소 속성을 조작합니다.

javascript에서 getAttribute 및 setAttribute를 사용하여 HTML 요소 속성을 조작합니다. 예:

alert(myImg.getAttribute("class"));
myImg.setAttribute("class","myclass2");

HTML 속성 클래스를 변경하면 해당 DOM 요소의 className 속성이 변경됩니다. 그러나 모든 HTML 요소에 해당 DOM 속성이 있는 것은 아닙니다. 예를 들어 사용자 정의 HTML 요소 속성은 DOM 속성으로 변환할 수 없습니다. 또 다른 예는 "className"이라는 요소 속성입니다. 이는 className이 HTML 클래스에 해당하기 때문에 HTML 속성과 DOM 속성의 차이점이 무엇입니까?

브라우저 엔진에는 "HTML 태그"라는 것이 없습니다. 그 본질은

DOM 노드 객체

입니다. "HTML 문서"라는 것은 없습니다. 그 본질은

DOM 노드 개체

로 구성된 문서 트리입니다. 브라우저 엔진은 실제로 DOM 노드 개체

를 저장하고 렌더링하는 "큰 형제"입니다. 단지 브라우저 엔진을 직접 작동할 수 없기 때문에 이러한 본질을 잘 알지 못할 뿐입니다(사실 익숙할 필요는 없지만 알아야 합니다).

DOM 노드 개체는 고유하지만 DOM 노드 개체의 데이터를 조작하는 방법은 여러 가지가 있습니다. 예를 들어, 이미지 너비의 경우: HTML은 HTML 속성과 DOM 속성의 차이점은 무엇입니까?의 너비 속성을 통해 정의할 수 있습니다.

JavaScript는

    Don'을 통해 읽고 수정할 수 있습니다. CSS를 잊지 마세요. CSS는 width 속성을 통해 수정될 수도 있습니다.
  • HTML 속성

    JavaScript DOM 객체 속성
  • 은 본질적으로
  • DOM 노드 객체 데이터에 영향을 미치는 많은 이유 중 하나

    입니다.

여러 가지 이유가 동일한 DOM 노드의 실제 데이터에 영향을 미칩니다

(다대일), 이 필수 이유를 꼭 기억하세요. 자세히:

HTML은 문서 트리와 노드 개체의 설명 방법일 뿐입니다.

브라우저의 parser 부분은 DOM 문서 트리를 HTML 기반의 브라우저 엔진으로 직접 전송합니다.

DOM 객체는 JSX와 같은 다른 방법을 사용하여 설명할 수도 있습니다. (물론 DOM 객체를 기술하기 위해 다른 방법을 사용하는 경우 DOM 문서 트리를 생성하는 프로세스는 그에 따라 반드시 수정됩니다.)

  • JavaScript의 DOM 객체는 브라우저 엔진에서 DOM 객체를 작동하기 위한 인터페이스일 뿐입니다 .

  • JavaScript의 DOM 객체와 브라우저 엔진에 저장된 DOM 노드는 본질적으로 동일하지 않습니다.

사용자는 실제로 JavaScript에서 제공되는 DOM 개체를 조작할 수 있는 권한만 갖습니다.

    JS 엔진과 브라우저 엔진은 협력하여 JavaScript DOM 객체가 엔진에 있는 DOM 노드의
  • 원래 매핑

    인지 확인합니다.

  • 이렇게 하면 사용자는 JavaScript DOM 개체를 작동하여 엔진에 저장된 DOM 노드를 투명하게 수정할 수 있습니다.

  • 기본적으로 브라우저 엔진은 DOM 트리가 업데이트될 때 다시 렌더링하는 역할만 담당하며 실제로 JS의 존재 여부에는 관심이 없습니다.

  • 你如果用其他办法修改了引擎使用的DOM树,也能更新文档结构。(当然这种办法基本上不存在…)

至于HTML属性名和JavaScript DOM对象的属性名大多相似或等同,这仅仅是人为的方便。我如果喜欢我也可以设计成这样嘛:

// <img  src="/static/imghwm/default1.png" data-src="http://localhost/1.png" class="lazy" alt="HTML 속성과 DOM 속성의 차이점은 무엇입니까?" >
node.DataSource = "http://localhost/1.png";
node.AlternativeText = "alt text";
node.Dimension.Width = 640;
node.Dimension.Height = 480;

虽然这样就真的没法记了。

JavaScript DOM对象属性名和HTML属性名的近似,是JavaScript给Web开发者的恩惠。选择只记忆HTML属性名,然后记忆(或者是踩坑了再反查)JavaScript属性名中少量和HTML不同名的差异点,这是很自然的。

总结:以上就是本篇文的全部内容,希望能对大家的学习有所帮助。更多相关教程请访问JavaScript视频教程jQuery视频教程bootstrap教程

위 내용은 HTML 속성과 DOM 속성의 차이점은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명
이 기사는 CSDN에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제
如何使用JS和百度地图实现地图平移功能如何使用JS和百度地图实现地图平移功能Nov 21, 2023 am 10:00 AM

如何使用JS和百度地图实现地图平移功能百度地图是一款广泛使用的地图服务平台,在Web开发中经常用于展示地理信息、定位等功能。本文将介绍如何使用JS和百度地图API实现地图平移功能,并提供具体的代码示例。一、准备工作使用百度地图API前,首先需要在百度地图开放平台(http://lbsyun.baidu.com/)上申请一个开发者账号,并创建一个应用。创建完成

js字符串转数组js字符串转数组Aug 03, 2023 pm 01:34 PM

js字符串转数组的方法:1、使用“split()”方法,可以根据指定的分隔符将字符串分割成数组元素;2、使用“Array.from()”方法,可以将可迭代对象或类数组对象转换成真正的数组;3、使用for循环遍历,将每个字符依次添加到数组中;4、使用“Array.split()”方法,通过调用“Array.prototype.forEach()”将一个字符串拆分成数组的快捷方式。

如何使用JS和百度地图实现地图热力图功能如何使用JS和百度地图实现地图热力图功能Nov 21, 2023 am 09:33 AM

如何使用JS和百度地图实现地图热力图功能简介:随着互联网和移动设备的迅速发展,地图成为了一种普遍的应用场景。而热力图作为一种可视化的展示方式,能够帮助我们更直观地了解数据的分布情况。本文将介绍如何使用JS和百度地图API来实现地图热力图的功能,并提供具体的代码示例。准备工作:在开始之前,你需要准备以下事项:一个百度开发者账号,并创建一个应用,获取到相应的AP

js中new操作符做了哪些事情js中new操作符做了哪些事情Nov 13, 2023 pm 04:05 PM

js中new操作符做了:1、创建一个空对象,这个新对象将成为函数的实例;2、将新对象的原型链接到构造函数的原型对象,这样新对象就可以访问构造函数原型对象中定义的属性和方法;3、将构造函数的作用域赋给新对象,这样新对象就可以通过this关键字来引用构造函数中的属性和方法;4、执行构造函数中的代码,构造函数中的代码将用于初始化新对象的属性和方法;5、如果构造函数中没有返回等等。

PHP正则表达式实战:匹配HTML属性PHP正则表达式实战:匹配HTML属性Jun 22, 2023 pm 09:29 PM

在网页开发中,HTML属性是非常重要的元素之一。然而,在实际开发中,经常需要对属性进行匹配和提取。这时候,正则表达式就成为了一个非常有效的工具。本文将介绍如何使用PHP正则表达式来匹配HTML属性,并结合实际案例进行讲解。首先,我们需要了解HTML属性的一般结构。一个HTML属性通常由属性名和属性值组成,中间用等号连接。例如:class="container

用JavaScript模拟实现打字小游戏!用JavaScript模拟实现打字小游戏!Aug 07, 2022 am 10:34 AM

这篇文章主要为大家详细介绍了js实现打字小游戏,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下。

php可以读js内部的数组吗php可以读js内部的数组吗Jul 12, 2023 pm 03:41 PM

php在特定情况下可以读js内部的数组。其方法是:1、在JavaScript中,创建一个包含需要传递给PHP的数组的变量;2、使用Ajax技术将该数组发送给PHP脚本。可以使用原生的JavaScript代码或者使用基于Ajax的JavaScript库如jQuery等;3、在PHP脚本中,接收传递过来的数组数据,并进行相应的处理即可。

js是什么编程语言?js是什么编程语言?May 05, 2019 am 10:22 AM

js全称JavaScript,是一种具有函数优先的轻量级,直译式、解释型或即时编译型的高级编程语言,是一种属于网络的高级脚本语言;JavaScript基于原型编程、多范式的动态脚本语言,并且支持面向对象、命令式和声明式,如函数式编程。

See all articles

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

AI Hentai Generator

AI Hentai Generator

AI Hentai를 무료로 생성하십시오.

뜨거운 도구

맨티스BT

맨티스BT

Mantis는 제품 결함 추적을 돕기 위해 설계된 배포하기 쉬운 웹 기반 결함 추적 도구입니다. PHP, MySQL 및 웹 서버가 필요합니다. 데모 및 호스팅 서비스를 확인해 보세요.

PhpStorm 맥 버전

PhpStorm 맥 버전

최신(2018.2.1) 전문 PHP 통합 개발 도구

VSCode Windows 64비트 다운로드

VSCode Windows 64비트 다운로드

Microsoft에서 출시한 강력한 무료 IDE 편집기

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

Atom Editor Mac 버전 다운로드

Atom Editor Mac 버전 다운로드

가장 인기 있는 오픈 소스 편집기