2011-08-19 3 views
0

그래서 프리 로딩에 대한 일반적인 질문이 있습니다. 몇 가지 큰 이미지를 스프라이트로 사용하여 모바일 사이트의 여러 위치에 추가 할 수 있지만 배경 이미지 (jquery가 div에 특정 클래스 이름을 지정할 때 할당 됨)가 있기 때문에 미리로드하는 것이 가장 좋지 않습니다. 이들. 당신은 단순히이 할이미지를 미리 jquery로 미리로드 - 이미지가 캐시에 남아 있습니까?

http://jquery-howto.blogspot.com/2009/02/preload-images-with-jquery.html

: : 여기이 게시물 보았다

var image1 = $('<img />').attr('src', 'imageURL.jpg'); 

을하지만 난이 방법으로 이미지를 미리로드 한 다음 직접 DOM에 할당하지 않을 경우 요소 (CSS 클래스가있는 배경 이미지로 지정되기 때문에) -이 이미지를 미리로드하는 것이 좋을까요?

+0

이 질문은 특정 ** 모바일 ** 브라우저에 관한 것입니까? – Sparky

+0

실제로는 다양한 모바일 스마트 폰에서 볼 수 있어야합니다. – mheavers

답변

2

스크립트가 end에서 실행되고 DOM 렌더링 중간이 아니라면 여전히 도움이됩니다 (페이지가 차단됨). 할당되면 플리커 효과가 표시되지 않습니다.

이미지 URL이 변경되지 않는 한 캐시에서 이미지가 선택됩니다.

+0

다른 많은 기능을 수행 한 후 문서에서 준비 상태로 호출됩니다. – mheavers

+0

@ mheavers : 괜찮습니다. 하나의 catch가 있지만 브라우저의 이벤트 루프를 묶을 것입니다. 브라우저의 스레드를 비우려면 document.ready에서이 트릭을 사용할 수 있습니다 :'setTimeout (function() {/ * preload images * /}, 0);' – Mrchief

+0

브라우저의 이벤트 루프를 묶어서 무슨 뜻인지 설명 할 수 있습니까? setTimeout을 사용하면 어떻게 도움이 될까요? – mheavers

관련 문제