코드 215

Javascript 에서 플래시 Object 잡기

=== Flash Object 인식 함수함수 (JavaScript) function getMovie( id ) { var obj = document.getElementById( id ); if( typeof objobj != 'object' && navigator.userAgent.indexOf("Safari") == -1 ) obj = obj.getElementsByTagName( 'object''object' )[0]; return obj; } === getMovie 함수 사용 예시 코드 (JavaScript) var objobj = getMovie( "flash_obj" ); obj.style.height = "100px"; ====== 코드 해석 - 이중으로 된 object 태그의 경우 Activ..

코드/JS 2011.01.27

렌더링 문답.

On Thursday 28th October 2010, @hika00 said: #as3t 3D플래시 어플리케이션을 만들며 문답.....................김: 음 제가 이번에 이 3D 작업 해보면서.. 어떻게 만들긴 했는데 상당히 cpu를 먹더라구요 ''; 맹: 암튼 3D는 cpu를 많이 먹어 그건 사실이잖아 김: 네 이거 어쩔 수 없는건가요?? 음 지금 cpu 모니터링 해보니까 대략 평균이 30% 정도.. 그 cpu를 많이 먹게 되니까 페이지에 있는 다른 swf 들에도 영향을 되게 많이 끼치더라구요??? 맹: 그럼 어떻게 적게 먹게 만드냐인데 정답은 최대한 render를 덜 호출하는거지 김: 전에 블로그에서 본 것 같아요 맹: render를 얼만큼 적게 호출하냐에 대한 답은 가능하면 많이 돌..

AS3.0 리스너 자동 제거하기.

as3에서 메모리릭의 가장 큰 주범은 뭐니뭐니 해도 이벤트 리스너입니다. 약한 참조가 실제로 동작하지 않기 때문에 일단 addEventListener를 했다손 치면 Dispatcher도 Listener도 전혀 GC가 안됩니다. 매번 꼼꼼하게 removeEventListener를 해주는게 정답입니다만 그게 어디 그렇게 쉽나요. 1회성 이벤트의 경우 사용 후 즉시 해제하는 경우가 많습니다. 또 그렇지 않더라도 조건을 걸어서 얼마든지 자신이 호출되는 시점에 제거하는 건 가능하겠죠. 지금 소개시켜드리는 간단한 코드는 리스너가 스스로를 해지할 수 있게 도와줍니다. 1 function listener( $e:Event ):void{ 2 3 $e.target.removeEventListener( $e.type, ar..