이글루에서 자바스크립트를 쓰는 두 가지 방법
엘프사냥 님께서 궁금해하셔서 뻘글을 남깁니다 (…)
이글루스 스킨으로 자바스크립트를 쓸 수 있는 방법이 몇 개 있긴 있을텐데,
아주 유명한 한 가지 방법과,
프로그래밍을 할 줄 아는 사람만이 쓸 수 있는 한 가지 방법이 있습니다.
1. 태그에 a="<>" 와 같은 것을 넣어서 무력화시키는 방법
이런 식으로 사용할 수 있습니다.
(a 대신 아무거나 넣어도 됩니다. alt="<>")
위의 방법은 더미속성 의 내부에 <> 을 집어넣어 정규식을 무력화 하는 그런 계열인 것 같긴 합니다만,
사실 이건 이글루 측에서 일부러 안 고친다고 보는 게 맞겠죠.
2. flash의 ExternalInterface를 통해 자바스크립트를 삽입하는 방법.
이걸 위해서는 Adobe Flash 시리즈가 필요합니다.
우선 빈 Flash Project를 하나 생성한 다음
다음과 같은 식으로 코드를 작성하는 겁니다(ActionScript 3 기준).
그리고 그걸 컴파일 해서 나타난 swf 파일을 embed로 삽입하는 방법 (…).

1 번의 단점은 이글루스에서 혹이라도 저 문제를 수정해버리면 바이바이가 되는 단점이 있고,
2 번의 단점은 ExternalInterface를 지원하는 브라우저에서만 사용할 수 있다는 단점이 있겠죠.
이글루스 스킨으로 자바스크립트를 쓸 수 있는 방법이 몇 개 있긴 있을텐데,
아주 유명한 한 가지 방법과,
프로그래밍을 할 줄 아는 사람만이 쓸 수 있는 한 가지 방법이 있습니다.
1. 태그에 a="<>" 와 같은 것을 넣어서 무력화시키는 방법
이런 식으로 사용할 수 있습니다.
<script type="text/javascript" src="어쩌고.js" a="<>"> </script a="<>"> (a 대신 아무거나 넣어도 됩니다. alt="<>")
위의 방법은 더미속성 의 내부에 <> 을 집어넣어 정규식을 무력화 하는 그런 계열인 것 같긴 합니다만,
사실 이건 이글루 측에서 일부러 안 고친다고 보는 게 맞겠죠.
2. flash의 ExternalInterface를 통해 자바스크립트를 삽입하는 방법.
이걸 위해서는 Adobe Flash 시리즈가 필요합니다.
우선 빈 Flash Project를 하나 생성한 다음
다음과 같은 식으로 코드를 작성하는 겁니다(ActionScript 3 기준).
ExternalInterface.call("eval", "var dummyvar=function(){var script=document.createElement('script');script.type='text/javascript';script.src='주소';document.body.appendChild(script);};");
ExternalInterface.call("dummyvar");
ExternalInterface.call("eval", "dummyvar=null;");그리고 그걸 컴파일 해서 나타난 swf 파일을 embed로 삽입하는 방법 (…).

1 번의 단점은 이글루스에서 혹이라도 저 문제를 수정해버리면 바이바이가 되는 단점이 있고,
2 번의 단점은 ExternalInterface를 지원하는 브라우저에서만 사용할 수 있다는 단점이 있겠죠.
# by | 2008/09/05 12:12 | 프로그래밍外 | 트랙백 | 덧글(3)






