Javascript 如何动态增加Google polyfill对话框的高度
我使用Googles polyfill对话框,并希望根据用户是否单击对话框按钮在其中添加更多元素(行)来动态增加其高度。 这是当用户单击该按钮时调用的javascript的一部分:Javascript 如何动态增加Google polyfill对话框的高度,javascript,modal-dialog,Javascript,Modal Dialog,我使用Googles polyfill对话框,并希望根据用户是否单击对话框按钮在其中添加更多元素(行)来动态增加其高度。 这是当用户单击该按钮时调用的javascript的一部分: var mc_dialog = document.getElementById('mc_dialog'); var h = mc_dialog.style.height; console.log("mc_dialog height = ",h); 但是height是简单的空,没有值-没有 而mc\u dialog.
var mc_dialog = document.getElementById('mc_dialog');
var h = mc_dialog.style.height;
console.log("mc_dialog height = ",h);
但是height
是简单的空,没有值-没有
而mc\u dialog.style.height=“500px”
则可以完美地工作
为什么我得不到mc_dialog.style.height的值
编辑:
好的,在邪恶企鹅的回答之后,我在javascript函数中设置高度初始值
,打开对话框,如下所示:
mc_dialog.style.height = "500px"
稍后,当用户单击向对话框添加内容时,我现在可以检索高度,所以现在看起来如下所示:
var mc_dialog = document.getElementById('mc_dialog');
var h = parseInt(mc_dialog.style.height);
mc_dialog.style.height= h+50+"px";
它工作得很好
但是现在我有一个问题,为什么我必须首先设置style.height?它不是那个元素的永久属性吗?如果不是,为什么?是类似的问题
.style.height仅在您首先设置属性时有效。
编辑:
是HTMLElement.style
属性的引用。它说:
style属性对于了解元素的一般样式没有用处,因为它只表示元素的内联样式属性中设置的CSS声明。
据我所知,如果元素的内联声明中没有
style=“smth”
,则HTMLElement.style.smth
不起作用。第一位的意思是最初?如果是,是的#mc_对话框css最初的高度为500px。请参见上面的“我的编辑”