2012-11-11 2 views
3

외부 스타일 시트에서 배경 이미지를 변경하고 싶습니다. 외부 스타일 시트 배경 이미지에서 예를 들어 자바 스크립트로 외부 스타일 시트에서 배경 이미지를 변경하는 방법?

했다 :

#nav 
    { 
    background-image:url(../images/newImg.png); 
    } 

나는 성공적으로 자바 스크립트를 사용하여이 이미지를 변경할 수 있습니다

#nav 
    { 
    background-image:url(../images/nav.png); 
    } 

지금 내가 좋아하는 런타임에 자바 스크립트를 통해 변경할 코드 :

eval('theRule.style.backgroundImage="../images/newImg.png"'); 

그러나 문제는 : 난 그냥 ../images/newImg.png 필요

#nav 
    { 
    background-image:url(http//localhost/project/images/newImg.png); 
    } 

내가 HTTP // localhost를/프로젝트/ 등 필요 없어요 ...

: 결과가 같다

나는이 문제를 해결하기 위해 열심히 노력했지만 아직 해결책을 찾지 못했습니다.

그래서이 문제를 해결하는 방법을 알려주십시오. 내 질문

감사

+0

안녕하세요. 나는 당신의 질문에 답할 것이지만 어디서부터 시작해야할지 모르거나 실제로 그것을 정확하게 설명하는 방법을 이해할 수있는 방법 중 하나입니다. 먼저 기본 개념을 이해하기 위해 [MDN] (https://developer.mozilla.org/en/US/docs/JavaScript)에서 JavaScript를 둘러 보는 것이 좋습니다. – elclanrs

+0

왜 스타일 시트를 변경하는 대신 페이지의 배경 이미지를 변경할 수 없습니까? –

+0

CSS에서'url (../ foo)'를 설정하면'getComputedStyle (elem) [ "background-image"]'는 이미 전체 경로를 생성합니다. 나는 그것이 어떤 차이가 있다고 생각하지 않는다. – pimvdb

답변

1

시도를 읽기위한

감사합니다.

rule.style.setProperty("background-image", "../images/newImg.png", ""); 
rule.style.cssText = rule.style.cssText.replace("../images/nav.png", "../images/newImg.png"); //Replace all images 

하지만 도움이되지 않으면 쉬운 방법을 찾지 못합니다.

관련 문제