Page 1 of 1

[질문] li 안의 a 링크 글자색 바꾸는?

Posted: 2006 04 20 20:16 45
by 스치다
안녕하세요?

이런 글을 안 올려야 마땅하지만 답답해서 질문합니다.

li태그 안에 글자색을 어떻게 바꾸어야 하는지 알고 싶어서요.

자바스크립트도 이용하고 있습니다.

처음 [li]<a href="주소">링크1</a>[/li]

이렇게 되어있습니다.

자바스크립트 DOM을 이용해서 위에 '링크1' 글자색을 바꾸려 하는데 잘 안되네요.

a href가 아닌 그냥 일반 텍스트는 자바스크립에서

li객체.style.color="색깔"; 이렇게 하면 바꾸어지는데요.

a 일때는 안 바꾸어 지네요.


또, 질문이 있습니다.
위에 li에 추가적인 속성을 주고 싶습니다.
자바스크립트로요.

[li] => 이렇게 변하도록 [li style="background:red"]

자바스크립트에서 DOM에서 엘리먼트를 추가하는 것은 아는데...
추가 속성을 주는 방법은 어떻게 해야 하는지 잘 몰라서 좀 가르쳐 주십시오.

Posted: 2006 04 20 23:36 41
by oragi
단순히 마우스오버시 색깔을 바꿀경우는 css로도 충분합니다.

Code: Select all

li a:hover {
    color:red;
}
굳이 자바스크립트를 쓰시겠다면

Code: Select all

var li_obj=document.getElementByTagName("li")[0]; 
var a_obj=li_obj.getElementByTagName("a")[0];
a_obj.style.color="red";
li_obj.style.background="blue";

감사합니다.

Posted: 2006 04 21 08:21 19
by 스치다
oragi wrote:단순히 마우스오버시 색깔을 바꿀경우는 css로도 충분합니다.

Code: Select all

li a:hover {
    color:red;
}
굳이 자바스크립트를 쓰시겠다면

Code: Select all

var li_obj=document.getElementsByTagName("li")[0]; 
var a_obj=li_obj.getElementsByTagName("a")[0];
a_obj.style.color="red";
li_obj.style.background="blue";
getElementByTagName 에서 getElementsByTagName 로... s가 빠졌네요.

감사드립니다.
그냥 a 태그쪽으로 초점을 맞추면 되는 것이었군요.

역시 개념이 제대로 파악도 안 된 상태라..

어트리뷰트 추가하는 방법도 알려주세요!..

다시 한번 감사드립니다.

오타가 났었군요.

Posted: 2006 04 21 10:19 12
by oragi
글을 훑어보지도 않고 쓰느라. :)

기본적인 dom 스크립팅은 여기서 보시면 되고

http://www.w3.org/TR/1998/REC-DOM-Level ... -core.html

일반적으로 속성을 주실 때는

Code: Select all

obj.setAttribute("href","http://url");
obj.id="box";
name, value, id, 혹은 event등은 setAttribute를 쓰실수 없습니다.

이 게시판에서 setAttribute 로 검색하시면 유용한 글들이 나올 겁니다.