基本Js功能可以缩放两个DIV的高度

我想要#result被缩放到#sidebar如果设置了高度。如果不是,则将#result保留在原始高度。基本Js功能可以缩放两个DIV的高度

我的代码:

window.onload = setDiv; 

function setDiv() {

var e = document.getElementById('sidebar'); // Get the sidebar infos

var eh = e.offsetHeight // div height

if (typeof(eh) == "undefined" || typeof(eh) == null) { // if sidebar isnt in the page

alert(eh);

return true;

} else {

var eh = e.offsetHeight // div height

var d = document.getElementById('result') // Get the result div height

var dh = d.offsetHeight // div height

d.style.height = eh + 65 + 'px'; // Set result div height to sidebar height

alert(d);

document.write(dh);

return false;

}

}

我不认为需要HTML/CSS。

谢谢。

回答:

这将导致一个错误,因为e不存在(还):

var e = document.getElementById('sidebar'); // <<< This is what doesn't work 

这是因为你window.onload不这样做的权利。以括号关:

window.onload = setDiv; 

http://jsfiddle.net/userdude/u8DZx/3/

我想证明这是多么容易在像jQuery库做。 window.onload并不总是按照你所想的方式工作;在jQuery中使用onDomReady$(document).ready()通常会更好。您也可以在页面加载的不同点上添加多个处理程序,使用window.onload方法更加困难。

$(document).ready(function(){ 

setTimeout(function(){setDiv();},2000); // So you can see the transition

});

function setDiv() {

var $sidebar = $('#sidebar');

if ($sidebar.size() === 0) {

return true;

} else {

$('#result').animate({

height : $('#sidebar').height()

}, 5000);

return false;

}

}

http://jsfiddle.net/userdude/u8DZx/1/

如果你不想要的效果,只是做:

$('#result').height($('#sidebar').height()); 

如果你实际上意味着使用offsetHeight,它听起来不像这就是你想要(height),你可以这样做:

$(document).ready(function(){ 

setTimeout(function(){setDiv();},2000); // So you can see the transition

});

function setDiv() {

var $sidebar = $('#sidebar');

if ($sidebar.size() === 0) {

return true;

} else {

$('#result').offset($('#sidebar').offset());

return false;

}

}

http://jsfiddle.net/userdude/u8DZx/2/

回答:

此行似乎是错误的:

if (typeof(eh) == "undefined" || "null") { // if sidebar isnt in the page 

试试这个:

if (typeof(eh) == "undefined" || typeof(eh) == null) { // if sidebar isnt in the page 


另外,我想补充一个try catch块。如果有抛出,你甚至不会知道你的代码没有执行。

以上是 基本Js功能可以缩放两个DIV的高度 的全部内容, 来源链接: utcz.com/qa/262315.html

回到顶部