2011-09-23 3 views

답변

1
var u = window.getComputedStyle(document.body, 'background-image'); 
u = u.replace(/url\(/, '').replace(/\)/, ''); 
var w = 0; 
var i = new Image(); 
i.onload = function(){ w = this.width; alert(w); } 
i.src = u; 

경고 : 난, 사건을 ommitted 몸이 지정되지 배경 이미지가 없을 때, 명심있다.

+0

감사합니다. 그것은 완벽하게 작동합니다. –

1

는 CSS에 정의 배경 이미지 폭을 얻을 수 있습니다 :

body { 
    background-image: url('background.jpg'); 
} 

는이 같은 뭔가가 필요?

나는 그렇게 생각하지 않습니다,하지만 당신은 약간의 트릭을 사용할 수 있어야합니다 : in this question를 설명 된대로 img 요소로로드 이미지를.

문서가 완전히로드 된 후에 이렇게하면 브라우저에서 캐시에서 이미지를 가져와야합니다.

0

일종의 해결 방법없이 직접 수행하는 것은 불가능합니다.

  1. 사용 JQuery와는 (권장) imagesLoaded 또는 onImagesLoad 플러그인, 배경이 무슨 이미지 감지합니다.
  2. JQuery Dimensions plugin을 사용하여 이미지 크기를 가져옵니다.