Background Image의 깜빡거리는 현상 없애기 - Internet Explorer 6 서비스팩1

대표적으로 어떤 엘리먼트를 오버시에 특정 backgroundImage가 나타나는 경우

IE6에서는 그 이미지 파일을 다시 읽어서 불러들이기 때문에 그 약간의 시간적 차이, 틈으로 인해

깜빡거리는 현상이 나타납니다.

깜빡거리는 현상을 해결해주는 스크립트 입니다.

이스크립트는 MSDN에서 메모리낭비를 막는 용도로 추천하는 내용입니다.

꼭 깜빡거리는 현상때문에 사용하는것이 아니더라도 불필요한 메모리 낭비를 도와줍니다.

이 스크립트는 IE6 서비스팩1이상에서 사용가능합니다.

서비스팩1 이상에서 설치되는 파일을 사용하여 해당 hotfix를 활성화 시키는 방식으로

backgrundImage를 cache하게 만들어 깜빡거리는 현상을 없애줍니다.

IE6에만 적용되는 스크립트 이므로 IE6에서만 작동하게끔 스크립트가 작성되어있습니다.

브라우저구분은 navigator.userAgent 가 아닌 Object Dom Detection Method를 통하여

IE6에만 적용합니다.

<script type="text/javascript">
(function(){
    /*Use Object Detection to detect IE6*/
    var m = document.uniqueID /*IE*/
    && document.compatMode /*>=IE6*/
    && !window.XMLHttpRequest /*<=IE6*/
    && document.execCommand ;

    try{
        if(!!m){
            m("BackgroundImageCache", false, true) /* = IE6 only */
        }
    }catch(oh){};
})();
</script>



관련내용 :
IE MSDN - Available memory decreases when you view a Web page in Internet Explorer 6 Service Pack 1
해외포스팅