문제

jQuery 1.3.2를 사용하고 있습니다.

인터넷 익스플로러에서 올바른 "높이"를 얻는 데 어려움이 있습니다. 6. 다른 모든 브라우저에서 높이 값이 정확합니다.

나도 사용하고 있습니다 WRESIZE jQuery 플러그인.

브라우저가로드 될 때마다 브라우저 치수를 기반으로 DIV, Iframes를 크기로 만드는 메소드를 발사합니다. (이것에 대한 좋은 이유가 있습니다.)

반환 된 $ ( 'body'). height ()의 값은 브라우저의 각 크기 조정 후 10 픽셀을 추가하는 것으로 보입니다.

다른 사람이 이와 같은 것을 발견합니까?

var iframeH = 0, h = 0, groupH = 0, adjust = 0;

var tableH = $("#" + gridId + "_DXHeaderTable").parent().height();
var pagerH = $(".dxgvPagerBottomPanel").height();
var groupHeight = $(".dxgvGroupPanel").height();

if (pagerH == null)
    pagerH = 0;

if (groupHeight != null)
    groupH = groupHeight + pagerH;

iframeH = $('body').height();
h = (iframeH - (tableH + pagerH + groupH));

$('#' + gridId + "Panel").css("height", (h + "px"));
$("#" + gridId + "_DXMainTable").parent().css("height", (h + "px"));

이 코드는 부모 컨테이너에서 DeVexpress 그리드의 높이를 설정하기위한 것입니다. 코드가 더 나을 수 있다는 사실을 무시하십시오. :)

올바른 크기를 얻는 데 사용할 수있는 "Body"외에 다른 것이 있습니까? Window Object ($ (Window) .height ())를 시도했지만 많은 도움이되지 않는 것 같습니다.

어떤 생각도 감사합니다!

도움이 되었습니까?

해결책

당신이 직면하고있는 문제는 CSS 렌더링 차이 일 가능성이 높습니다. 부동 문제, 패딩 및 마진 렌더링 차이로 인해 브라우저 간의 차이가 있습니다.

얻으 려하다 $ ( "body"). InnerHeight () 그리고 $ ( "body"). outerheight () 다른 브라우저에서 비교하면 일반적인 결과가 나옵니다. 최악의 경우 일부를 실행해야 할 수도 있습니다 if 케이스

다른 팁

물론 여기에 몇 가지 아이디어가 있습니다.

IE와 ESP. 구형, 즉, 나는 높이 렌더링 함수 주위에 1-10ms settimeout 문을 추가하고 싶습니다. DOM과 즉, "휴식"을 제공합니다.

또한 페이지에서 물건이 보이는지 확인하십시오.이를 위해 절대 위치를 사용하여 일시적으로 화면에서 물건을 버려야 할 수 있습니다. 그런 다음 다시 화면에 공개해야합니다.

또 다른 것은 높이 ()가 때때로 원한다는 것입니다. .CSS ( '높이')를 시도하여 높이를 검색하고 [또한 더 빠릅니다]하고 'PX'를 제거하십시오. 때때로 진정한 측정.

또는 a 치수 플러그인 더 많은 작업을 제공하는 jQuery의 경우 크로스 브라우저입니다.

이 플러그인을 사용하여 드래그 가능에서 드롭 페이블로 선을 그려 드롭으로 표시합니다. 여기

$('body').height(); // call this first

iframeH = $('body').height(); //then try this
라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top