2013-07-11 1 views
-1

내가 시도한 것은 브라우저 높이를 계산하고 그 수를 약 20 % 줄인 다음 요소의 높이에 해당 수를 할당하는 것입니다. 문제는 요소가 스크롤 가능한 div 안에 있기 때문에 height: 80%을 할당하면 브라우저 높이가 부모 div 높이가 아니기 때문에 작동하지 않습니다. 또 다른 문제는 불행히도 강제로 !important 구문을 사용해야한다는 것입니다.jQuery에서 변수 사용 CSS 속성 행

var browserHeight = jQuery(window).height(); 
var desiredHeight = browserHeight * 0.8; 
jQuery('##myID .myClass').attr('style', 'height: 100px !important'); 

난 그냥 !important을 잃지 않고, desiredHeight100px을 교체하는 방법을 알아낼 필요가 : 여기

는 내가 지금까지 가지고있는 것입니다.

나를 도울 수 있다면, 분명히 감사하겠습니다! 다른 (아마도 더 나은) 방법을 염두에두고 있더라도.

$('#myID .myClass').attr('style', 'height: ' + Math.round(desiredHeight) + 'px !important'); 

참고 : :)

+0

jQuery를 ('# MYID .myClass') ATTR ('스타일', '높이' '! PX 중요한'+ desiredHeight +).; –

답변

2

당신은 단지 변수 문자열을 연결할 수있는 작업을해야 내가 선택에서 추가 파운드 기호를 제거, 그 원인있을 것입니다 예외. 또한 인라인 스타일이기 때문에 중요하지 않아야하며 요소에 대한 모든 CSS 규칙을 무시합니다. 나는 같은 CSS 방법을 사용하려면이 스위치 것 :

$('#myID .myClass').css('height', desiredHeight); 
+0

답변 해 주신 모든 분들께 감사드립니다. :) 어떤 이유로 CSS에 할당하지 않고 오류가 없으며 코드를 건너 뛰지 않습니다. 조사 할게있어. 추신. 나는 절대적으로! important와 double # 그리고 $ 대신 jQuery가 필요하다 - cfm 파일이다. ;) – Joey

+0

아 cfm, 알겠습니다. 나는 왜 당신이! important를 필요로하는지 여전히 알지 못한다. 인라인은 그 요소에 적용되는 모든 CSS 규칙을 오버라이드 할 것이다. 이것이 왜 당신을 위해 작동하지 않는지 잘 모르겠습니다. –

+0

수정하려는 요소에 이미 제거 할 수없는 인라인 값이 있기 때문에 필요합니다. – Joey

0

var browserHeight = jQuery(window).height(); 
var desiredHeight = browserHeight * 0.8; 
jQuery('##myID .myClass').attr('style', 'height: '+desiredHeight+'px !important'); 
1
var browserHeight = $(window).height(); 
var desiredHeight = browserHeight * 0.8; 
jQuery('##myID .myClass').attr('style', 'height: '+ desiredHeight +'px !important');