Javascript 如何获取HTML元素的原始高度?

Javascript 如何获取HTML元素的原始高度?,javascript,jquery,html,jquery-ui,Javascript,Jquery,Html,Jquery Ui,我有一个div: <div id="div" style="height:150px; border:solid thin blue;"></div> 是否有办法检索原始的div高度?div是可调整大小的,因此用户可能在加载我的代码之前调整了它的大小。 注意:我的代码是一个jQuery插件,所以在调用插件之前,我不知道元素发生了什么(所以请不要告诉我在元素数据中存储高度…) 在这个演示中,我想在调整div的大小后获得150。 任何帮助都将不胜感激 否,因为resiz

我有一个div:

<div id="div" style="height:150px; border:solid thin blue;"></div>

是否有办法检索原始的div高度?div是可调整大小的,因此用户可能在加载我的代码之前调整了它的大小。
注意:我的代码是一个jQuery插件,所以在调用插件之前,我不知道元素发生了什么(所以请不要告诉我在元素数据中存储高度…)

在这个演示中,我想在调整div的大小后获得150

任何帮助都将不胜感激

否,因为
resizeable()
method覆盖内联样式
height
value

你需要把它存放在别的地方

例如,在使
div
可调整大小之前:

var originalHeight = $('#div').height();
$('#div').resizable();

$('#cmd').button().click(function(){
    alert(originalHeight);
});

我不知道从DOM中获取旧数据的方法,但是你能不能坚持让插件调用init函数,然后获取值?您还可以在文档中建议在完成init函数之前不要移动元素,尽管如果通过.ready()调用它,这应该在用户有机会闪烁之前发生

如何使用jqueryui调整div的大小


另一种选择可能是再次使用ajax获取页面,然后解析页面,但这将需要大量的,而且非常混乱。

我不能,不是我初始化元素,我的插件可能会在其他插件执行后被调用。所以,正如我所说,你不能。元素的变化历史是不存在的。不幸的是,这个答案在技术上是有帮助的!至少我必须找到另一种方法来解决我的问题。我有3个答案教我如何设置大小,如何在数据中存储大小!!!!世界跆拳道联盟!!!!!谢谢anyway@skafandri:您可以重写插件,使其初始化与执行分离。像
$(…).plugin(“init”)然后做一些你不知道的事情,然后调用
$(…).plugin(“重置”)我正在尝试以另一种方式处理问题,请检查我正在尝试以另一种方式处理问题,请检查代码本身,代码背后的意图可以使用一些描述。你为什么要使用这种技术?它对手头的问题有什么特别的帮助?我认为这个答案是最有价值的,如果你提供一个包含这些信息的编辑,我会很高兴地给它投票。我不理解在加载代码之前调整dvi大小的问题。加载文档后,此代码将获得原始高度(或者我可以在div load事件上绑定此逻辑)。如果我不理解问题,我深表歉意。哦,我想您已经理解了问题。您在此处提供的代码与公认的答案相匹配。我认为你遗漏了一个更好的答案,那就是为什么这应该起作用。是的,它起作用了,但它背后的意图却不起作用。
originalHeight=0;
$(document).ready(function()
{
    originalHeight= $("#div").height()
});