javascript - 使用javascript更改div的边距

标签 javascript css html image

我正在制作一个包含图片库的网页。我编写了一个 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/

相关文章:

javascript - 如何在 Javascript 中打开一个选项卡

javascript - 单击按钮时会打开新窗口,但使用 .onclick() 时不会打开新窗口

javascript - 点击时结合 jQuery

javascript - HTML - 当我放大/缩小时我的内容变得困惑

css - IE7 div(容器内)间隙和错位问题

php - Imagick 和 html 标签

javascript - Jestjs 与 Expo-cli。不变违规 : Element type is invalid

css - 位于 float 元素旁边时的列表项剪辑

javascript - 如何在具有绝对位置的div上的javascript中忽略Onmouseover

javascript - 如何在静态网站上制作 "adult content warning"?