jquery.smartWizard 플러그인에는 wizard 단계의 높이를 조정하는 fixHeight라는 함수가 있습니다. 이 단계는 단계가 처음 표시 될 때 또는 단계 내 숨겨진 div를 나타낼 때 사용됩니다. IE (Win8.1의 IE 11 이상) 및 FireFox에서 정상적으로 작동합니다. 그러나 최신 버전의 Chrome (버전 40.0.2214.94 m)에서 outerHeight는 100 픽셀 이상으로 훨씬 더 작은 값입니다. Chrome에서 outerHeight가 잘못된 값을 제공합니다. IE 및 FireFox에서 확인
이
은 밖으로 상자의 함수입니다 : 내가 애니메이션을 추가 할 수있는 마지막 단계를 수정SmartWizard.prototype.fixHeight = function(){
var height = 0;
var selStep = this.steps.eq(this.curStepIdx);
var stepContainer = _step(this, selStep);
stepContainer.children().each(function() {
if($(this).is(':visible')) {
height += $(this).outerHeight(true);
}
});
// These values (5 and 20) are experimentally chosen.
//stepContainer.height(height);
//this.elmStepContainer.height(height + 12);
stepContainer.animate({ "height": height - 12 }, 500);
this.elmStepContainer.animate({ "height": height }, 500);
alert(window.outerHeight);
}
. Chrome 사용 여부에 관계없이
편집 : 다음은 IE와 Chrome의 차이점을 보여주는 피들입니다. 회원을 클릭 한 다음 비회원을 클릭하십시오. 두 번째 값 집합이 각 브라우저마다 다름을 알 수 있습니다. http://jsfiddle.net/xjk8m8b1/
EDIT2 : 여기 당신이 시도하고 눈에 보이는 요소를 계산 할 때까지 두 브라우저가 높이 같은 값을 얻을 보여줍니다 또 다른 바이올린입니다. 그러면 Chrome이 꺼져 있습니다. http://jsfiddle.net/xjk8m8b1/2/
질문을 jsFiddle ** 및 ** 모든 관련 코드/CSS/HTML 마크 업으로 복제하려면 샘플을 제공해야합니다. –
아마도 모든 콘텐츠가 완전히 렌더링되기를 기다리지 않기 때문에 문제가 될 수 있습니다. –
I '윈도우로드 이벤트, 페이지로드에서 래핑을 시도하고 심지어 지연을 추가했는데 그 중 아무 것도 어떤 변화도 일으키지 않았다. –