2010-12-30 7 views
1

내가 크기 조절을 만드는 바빠하지만 다시로드에 처음 쿠키를로드 고정 뭔가 폭 설정 될 때까지 100 %로 전환 :CSS 속성을 설정하는 가장 빠른 방법은 무엇입니까?

//set width from cookie, unfortunately we need todo this on docready because #main-container is not done rendering -_- 
var width = $.cookie("width"); 
// Set the user's selection for the left column 
if (width != null) { 
    if (width == "fluid") { 
     alert("fluid!"); 
     $('#main-container').addClass('width-fluid'); 
    } else { 
     $('#main-container').addClass('width-fixed'); 
    } 
} else { 
    $('#main-container').addClass('width-fixed'); 
}; 

어떤 아이디어?

감사합니다,

데니스

는 당신이 jQuery를 사용하여 특정 CSS 속성을 설정할 수 있습니다
+1

'! = null'은 중복 된 것처럼 보입니다. 'width == "fluid"와 비교하여 하나의 if-else는 똑같이 할 것입니다. 또한 현재 CSS 속성을 설정하지 않고 클래스를 추가하고 있습니다. 그들은 서로 다른 두 가지입니다. – BoltClock

+1

당신은 우리에게 js를 주었고 그것이 무엇을하는지 우리에게 말했습니다 ... 우리는 또한 html을 가지고 당신이 원하는 것을 알고 있다면 올바른 답을 얻을 확률이 더 큽니다. – jondavidjohn

답변

1

단지 기본 css 속성 인 "height"와 "width"를 0 인라인 또는 외부 CSS 파일로 설정하십시오. 그러면 쿠키가로드 될 때 원하는대로 쿠키가 설정됩니다.

ex. 당신은 할 수 있습니다하지 않을 경우 인라인 기본 CSS (JS가에 영향을 미치기 전에)

<element style="height:0px;width:0px;" /> 

의 나는 또한 요소를 설정하기 위해, 당신은 블록 수준 요소 (이미지)을 취급하고 있으리라 믿고있어에 "디스플레이 : 블록 "그래서 그것은 높이와 너비를 존중할 것입니다.

+0

나는 이것을 시도했다. 그러나 주입하는 것은 매우 늦었다. 나는 docready 외부에서 작동하고 # main-container의 전체 렌더링에 의존 할 수없는 무언가를 찾고 있습니다. – FLX

+0

다시, 우리는 당신이 원하는 것을 추측 할 필요가 있습니다. 나는이 주석에서 추측하고 있습니다. 페이지를 표시하기 전에 쿠키 너비를로드하고 싶습니까? 더 많은 코드를 제공하면 더 나은 (html/css/js) – jondavidjohn

0

는 다음과 폭 그래서

$("#selector").css("property-name", value); 

, 그냥 사용합니다 :

$("#main-container").css("width", value); 
+0

나는 이것도 시험해 보았지만 느린 것과 마찬가지다. – FLX

+0

"너무 느리다"는 말을 계속하고 있지만, 왜 또는 왜 요구 사항이 무엇인지는 구체적으로 말하지 않습니다. jsfiddle를 통해 완전한 샘플 페이지를 게시하고 어떻게 작동하는지에 대해 마음에 들지 않는 것을 설명하십시오. – Sorpigal

관련 문제