javascript & HTML2006. 9. 27. 22:18

오늘 몰라서..한참을 헤멨던 것....-_-;;

1. 하고자 했던 것은, 평소에는 Mouse Over, Out 시에 이미지가 바뀌는 버튼이 선택되고 나면 바뀌지 않고 선택된 채로 남아있게 하는 . Onmouseover이벤트에 함수가 있는것을 지우는 것은 간단했다. onmouseover=null; 했더니 바로 없어졌으니까. 그런데 이렇게 null버튼에 다시 이벤트를 주는 것에서문제가 발생했다. 처음 코드는 어땠냐면..


button.onmouseover = "changeImage()";


하지만, 이렇게 하면.. changeImage()함수가 아니라, 문자열로 인식되기 때문에 아무런 효과가 없다..-_-;;

구글에서 한참 뒤진 결과..방법을 알게 되었다.


button.onmouseover = function() { changeImage() };


이렇게 function() 붙여줘야, 함수라는 개체로 인식이 된다는 것...


2. 그런데, 이것보다 좋은 방법을 조금 있다가 누군가에게서 배워서 알게 되었다는 것...-_-;;;

attachEvent() 라는 메서드를 쓰면 된다.


,


button.attachEvent('onmouseover',changeImage);

* 그런데, attachEvent는.. IE에서만 된다...FireFox를 생각한다면 쓰면 안 됨...(현재 프로젝트는 Outlook에 있는 IE만을 Target으로 하고 있기 때문에 그냥 뒀다..)

Posted by kkongchi