使用javascript更改div的边距

时间:2011-09-25 15:29:37

标签: javascript css html image

我正在制作一个包含图片库的网页。我写了一个javascript函数,当你点击缩图时,可以显示更大版本的图像。该函数的作用是更改隐藏的div中img标记的搜索路径。然后它改变div的顶部和左侧值以将div定位在屏幕的中心,然后它应该根据图像大小调整div的顶部和左边距,以将其中间位于屏幕的中心

这是失败的地方。或者真的,它有效,但不是应该的时候。如果我第一次打开图像,它与中心的偏移量是错误的(顶部和左侧的负边距是错误的)。如果我再次打开它,它的工作原理!如果我打开一个宽度和高度不同的图像,我会得到同样的错误。

这是用于设置边距的代码:

    imagebox.style.marginLeft=(image.width/-2)+'px';
    imagebox.style.marginTop=(image.height/-2)+'px';

这在谷歌浏览器和Safari中运行得很好,但在其他浏览器中它并不总是使用此代码,有时它会给它一个双重调用。

最后我当然将div可见性设置为可见。

1 个答案:

答案 0 :(得分:-1)

尝试jQuery函数.css().width() / .height()。它们几乎在每个浏览器中都能正常工作。