2014-12-29 5 views
4

왜 작동하지 않습니까? 내 듣고을 찢어 ...

이 바이올린은 당신이 볼 수 있듯이 http://jsfiddle.net/jbreezy/pswdn2wb/

$(document).ready(function() { var marginFix = $('.marginFix').css('font-size'); var onethirdMargin = parseInt(marginFix/3); $('.marginFix').css({"margin-top":marginFix}); $('.marginFix').css({"margin-bottom":onethirdMargin}); });

, 나는 그냥 변수를 원하는 승인 대답 업데이트되었습니다 'onethirdMargin'다른 변수의 1/3로 .

기본적으로 CSS에서 글꼴 크기를 설정 한 것과 상관없이 요소 margin-top은 해당 font-size와 같고 여백 하단은 자동으로 1/3이됩니다. 클래스 marginFix 그것에). 현재 마진 - 바닥은 여전히 ​​동일하게 유지됩니다 ... 어떤 도움을 슈퍼 감사합니다!jQuery가 변수를 나눕니다.

+0

'marginFix'는 단위 (24px와 같이)로 주어 지므로 먼저 유닛을 제거하지 않고'parseInt (...) '사용자를 지정할 수 없습니다. – ochi

답변

13

변화

var onethirdMargin = parseInt(marginFix/3); 

는 "24 픽셀"에에서는 parseInt는 그것을 정수 (24)를 만드는 경우

var onethirdMargin = parseInt(marginFix, 10)/3; 

에, 당신은 https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/parseInt, 모질라에 따르면 3

로 나눌 수 있습니다 ParseInt, 즉 10으로 두 번째 매개 변수를 지정해야합니다. 구문 분석 할 기준이됩니다. 그것에 대한 설명을 해주신 Rocket Hazmat에게 감사드립니다.

+2

두 번째 매개 변수로'parseInt'에'10'을 전달해야합니다. –

+1

그래. :-) 디버깅 팁을 배우고 싶다면 console.log() 변수를 사용하여 marginFix가 24px라는 것을 빨리 알 수 있습니다. –

관련 문제