문제는 절대 위치 요소, 그래서 JQuery와 함수 (// 라인) 변성.
function getWidthOrHeight(elem, name, extra) {
//deletes position//
var $elem = $(elem); //
var position = $elem.css('position'); //
$elem.css('position', ''); //
// Start with offset property
var val = name === "width" ? elem.offsetWidth : elem.offsetHeight,
i = name === "width" ? 1 : 0,
len = 4;
if (val > 0) {
if (extra !== "border") {
for (; i < len; i += 2) {
if (!extra) {
val -= parseFloat(jQuery.css(elem, "padding" + cssExpand[i])) || 0;
}
if (extra === "margin") {
val += parseFloat(jQuery.css(elem, extra + cssExpand[i])) || 0;
} else {
val -= parseFloat(jQuery.css(elem, "border" + cssExpand[i] + "Width")) || 0;
}
}
}
//sets position//
$elem.css('position', position); //
return val + "px";
}
예상대로 작동! –
잘 작동합니다 ... http://jsfiddle.net/akhurshid/5E9kj/ –
@AK : 시도하고 unzoom (ctr + "-") 여전히 문제를 확인하십시오. –