JavaScript에서 속성을 수정하는 방법: 먼저 getElementById(), getElementsByName() 또는 getElementsByTagName()을 사용하여 DOM 개체를 가져온 다음 "DOM object.Attribute name = value;"를 사용하여 속성을 수정합니다.
이 튜토리얼의 운영 환경: Windows 7 시스템, ECMAScript 버전 5, Dell G3 컴퓨터.
HTML DOM 개체
JavaScript 관점에서 웹 페이지의 각 HTML 태그는 DOM 개체이며 태그의 속성은 DOM 개체의 속성이기도 합니다. 예:
173dc41b602843afb86eee56ef8f0692
JavaScript 관점에서 보면 이 5811a0e55f5c071c3af8b2b3e8fe348d 태그는 DOM 객체의 일종인 Image 객체입니다. id, src, width, border 속성의 값이 지정되었으며, 기타 속성은 기본값을 채택합니다.
JavaScript 프로그램을 사용하여 DOM 개체에 액세스할 수 있습니다. 실제로 프로그램을 사용하여 HTML 태그에 액세스할 수 있습니다. 프로그래밍 방식으로 DOM 객체의 속성을 수정할 수 있습니다. 즉, 프로그램을 사용하여 HTML 태그의 속성을 수정하여 태그를 제어 가능하게 만들 수 있습니다.
DOM 개체의 속성은 일반적으로 해당 HTML 태그의 속성에 해당하며 이름은 일반적으로 동일하지만 DOM 개체의 속성은 대소문자를 구분해야 합니다. 예를 들어, border 속성은 a1f02c36ba31691bcfe87b2722de723b, f5d188ed2c074f8b944552db028f98a1 등과 같은 여러 태그에서 사용될 수 있습니다. Image 객체 및 Table 객체와 같은 해당 DOM 객체에도 테두리 속성이 있으며, 가치 평가 방법도 동일합니다.
HTML 태그와 이름이 다른 DOM 속성이 있지만 실제로는 동일한 속성입니다. 예를 들어 HTML 태그의 class 속성에 해당하는 DOM 속성은 className입니다(대소문자 주의). 이는 클래스가 JavaScript에서 예약어이고 속성 이름이 예약어와 동일한 이름을 가질 수 없기 때문입니다.
해당 HTML 속성이 없는 일부 DOM 속성도 있습니다. 예를 들어 innerHTML은 태그에 포함된 콘텐츠를 나타내는 DOM 속성입니다. 이 속성을 사용하여 HTML의 여는 태그와 닫는 태그 사이의 콘텐츠를 수정합니다. 그러나 a1f02c36ba31691bcfe87b2722de723b과 같은 단일 태그의 경우 해당 Image 개체에는 innerHTML 속성이 없습니다.
또한 DOM 개체는 프로그램에서 호출할 수 있는 메서드도 제공합니다.
사실 DOM 개체는 JavaScript 전용 개체가 아니라 크로스 플랫폼 개체이며 많은 언어에서 DOM 개체 액세스를 지원합니다. 자바스크립트는 그 중 하나일 뿐입니다.
객체 가져오기
JavaScript를 사용하여 HTML 태그의 속성을 설정하거나 수정할 때 가장 먼저 해야 할 일은 태그에 해당하는 DOM 객체를 가져오는 것입니다. 일반적으로 사용되는 방법은 다음과 같습니다.
1. id를 사용하여 DOM 객체 가져오기:
태그가 id 속성을 설정하는 경우 id 값을 사용하여 태그에 액세스할 수 있습니다.
<code><span class="c2"></span>
<code>document.getElementById( id )<br/></code>document는 현재 HTML 문서를 나타내는 BOM 개체입니다. getElementById는 Document 개체의 메서드입니다. id는 웹에 있는 HTML 태그의 id 속성 값입니다. 페이지.
document.getElementById( id )
의 반환 값은 객체 데이터, 즉 DOM 객체입니다.2. 이름을 사용하여 DOM 개체 가져오기:
태그에 이름 속성이 설정된 경우 이름 값을 사용하여 태그에 액세스할 수 있습니다.
document.getElementsByName( name )설명:
따라서 document.getElementsByName( name )
의 반환 값은 단일 개체가 아니라 이 페이지에서 동일한 이름 값을 가진 모든 태그를 포함하는 DOM 개체의 배열입니다.3 태그 이름을 사용하여 DOM 개체 가져오기:
태그 이름을 사용하여 지정된 태그에 직접 액세스할 수 있습니다. 해당 JavaScript 코드는
document.getElementsByTagName( tagname )설명: 웹 페이지에 있기 때문입니다. , 동일한 A 태그가 여러 번 나타날 수 있으므로 document.getElementsByTagName( tagname ) 의 반환 값은 이 페이지에서 지정된 유형의 모든 태그를 포함하는 DOM 개체의 배열이기도 합니다. 🎜
比如:document.getElementsByTagName( "img" ) 返回的是一个 Image 对象数组,每个元素对应于网页中的一个a1f02c36ba31691bcfe87b2722de723b 标签,数组中的元素按 a1f02c36ba31691bcfe87b2722de723b 标签出现的顺序排列。
比较以上三种方法,document.getElementById( id ) 是最好的也是最快的方法,它可以直接访问到网页中一个指定的 HTML 标签,这也是我们今后最常使用的方法。
设置或修改标签的属性
获取了一个 DOM 对象之后,我们可以为该对象的属性进行赋值,从而修改了它所对应标签的属性值。一般方法是:
DOM对象.属性名 = 值;
DOM 对象的属性名通常和HTML标签的属性名相同,但它要区分大小写,所以在书写时要特别注意。
例1:
<img id="image1" src="./image/2.jpg" border="0" /> <button οnclick="setBorder(0)">border="0"</button> <button οnclick="setBorder(1)">border="1"</button> <button οnclick="setBorder(3)">border="3"</button> <button οnclick="setBorder(8)">border="8"</button> <script type="text/javascript"> function setBorder( n ) { document.getElementById( "image1" ).border = n; } </script>
本例可以通过按钮修改 a1f02c36ba31691bcfe87b2722de723b 标签的 border 属性的值。
首先,为了可以访问这个 a1f02c36ba31691bcfe87b2722de723b 标签,为它定义了 id="image1" 属性。
在按钮中,利用事件句柄 onclick 响应鼠标单击事件,调用 JS 函数 setBorder()。
在 setBorder() 函数中,利用 document.getElementById( "image1" ) 方法获取a1f02c36ba31691bcfe87b2722de723b 标签对应的 Image 对象,并为它的 border 属性设置新值。
例2:
<marquee id="Mar">欢迎光临!</marquee> <p><button οnclick="setDir()">改变方向</button></p> <script type="text/javascript"> var dir = "left"; function setDir() { dir = (dir=="left") ? "right" : "left"; document.getElementById( "Mar" ).direction = dir; } </script>
本例利用按钮修改 ed126914ed1419bab26abf7cf307b7b9 标签的 direction 属性的值。
ed126914ed1419bab26abf7cf307b7b9 标签没有指定 direction 属性时,其默认值为“left”。利用 JS 程序可以修改它的值。
【推荐学习:javascript高级教程】
위 내용은 JavaScript에서 HTML 태그 속성을 수정하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!