我正在制作一个包含图片库的网页。我编写了一个 javascript 函数来在您单击缩图时显示更大版本的图像。该函数的作用是更改隐藏的 div 中 img 标签的搜索路径。然后它更改 div 的顶部和左侧值以将 div 定位在屏幕中央,然后它应该根据图像大小调整 div 的顶部和左侧边距以将其中间放置在屏幕中央.
这是它失败的地方。或者真的,它有效,但不是在它应该的时候。如果我第一次打开图像,它与中心的偏移量是错误的(顶部和左侧的负边距是错误的)。但是,如果我再次打开它,它就会起作用!如果我打开具有不同宽度和高度的图像,我会得到同样的错误。
这是用来设置边距的代码:
imagebox.style.marginLeft=(image.width/-2)+'px';
imagebox.style.marginTop=(image.height/-2)+'px';
这在 google chrome 和 safari 中工作得很好,但在其他浏览器中它并不总是使用此代码,有时它会双重调用。
最后我当然将 div 可见性设置为可见。
最佳答案
试试 jQuery 函数 .css()
和 .width()
/.height()
。它们几乎适用于所有浏览器。
关于javascript - 使用javascript更改div的边距,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7546492/