문제

편집 : Mozilla는 버그를 수정했습니다. 이 스레드는 죽었습니다.

편집 : 이것은 모질라 버그입니다. 이 스레드를 참조하십시오 : https://bugzilla.mozilla.org/show_bug.cgi?id=501853

여기에 이미지에 사용하는 스프라이트가 있습니다. http://www.trailbehind.com/site_media/images/sprite.png

Firefox 3.5에서, 내지도에서 아이콘을 렌더링 할 때마다 스프라이트가 가져 오는 것 같습니다.이 페이지를로드하거나 맵을 팬화 할 때 Firebug Net 패널의 동작을 볼 수 있습니다. http://www.trailbehind.com/node/1148091/

나는 이전에 인터넷 익스플로러에서 이것과 비슷한 문제를 겪었지만 결국 Safari 3/4, FF 2/3 및 IE 6/7/8에서 이것을 얻었습니다. 이제 FF 3.5에서 뭔가 잘못되었습니다 :(

이미지를 사전 캐시하기 위해이 코드를 문서에 넣으려고했지만 아무 소용이 없습니다.

  var pre = new Image();
  pre.src = "/site_media/images/sprite.png"; 

다음은 나중에 맵 마커를 생성하는 코드입니다 (그리고 Sprite 이미지를 다시 가져옵니다). GMAPS와 관련이있을 수 있습니다. 왼쪽에 각 아이콘이나 낙관적 이미지를 그릴 수있는 스프라이트를 가져 오지 않는 것 같습니다.

//returns an image-like GIcon based on a sprite  
function getGIconSprite(attr) {
  var myicon = new GIcon(G_DEFAULT_ICON);
  myicon.sprite = {image:"/site_media/images/sprite.png", top:0};
  myicon.iconSize = new GSize(16,16);
  myicon.iconAnchor = new GPoint(8,8);
  myicon.shadow = null;
  myicon.sprite.left = attr.offset*16;
  return myicon;
}
도움이 되었습니까?

해결책

이것은 공식입니다 Firefox 3.5 버그. 간단한 해킹은 모든 스니핑 객체에 대해 두 개의 클래스를 만드는 것입니다. 하나는 배경 이미지를 가진 모두에 공통적이며 두 번째는 배경 위치를 갖습니다. 그게 다 아이들이야!)

다른 팁

Firefox 3.5 서버에서 이미지를로드하고 캐시를 제대로 사용하지 않는 데 문제가있는 것 같습니다. Google "Firefox 3.5 이미지 캐싱되지 않음"은이 문제를 알아 차리는 많은 사람들이 보일 것입니다.

GMAPS JS 관련입니다. 기존 변수에 대한 포인터 (변수 사본)를 사용해야합니다.

defaulticon.sprite = {image:"/site_media/images/sprite.png", top:0};

myicon.sprite = defaulticon.sprite;
myicon2.sprite = defaulticon.sprite;
etc.

Lighttpd를 사용하는 것을 본다. 사용하고 싶을 수도 있습니다 모듈 : mod_expire 정적 파일의 경우. 한 달 이상 만료되도록 설정하십시오. 이에 대한 자세한 정보를 찾을 수 있습니다 야후.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top