javascript - 在IE中获取图像的 'real'宽度和高度

标签 javascript html image internet-explorer shadowbox

我目前正在构建一个网站并使用 Shadowbox JS 插件来显示图像。

因为我们通过 JSP 提供图像(而不是直接链接到图像文件),Shadowbox 似乎无法动态确定它们的宽度和高度,因此只能在屏幕大小的覆盖层中打开图像。

可以使用“rel”手动将宽度和高度传递给 Shadowbox 插件,因此我使用以下代码解决了 FF/Chrome/Safari 的问题:

$('#pic1img').attr("src")).load(function() {
            picWidth    = this.width;
            picHeight   = this.height;
    });

 $(window).load(
            function() {
                var w = $("#pic1img").width();
                var h = $("#pic1img").height();
                if( picWidth < w ){ picWidth = w; }
                if( picHeight < h ){ picHeight = h; }
                $('#pic1').attr('rel', 'shadowbox[pics];height=' + picHeight + ';width=' + picWidth);
            }
 );

但我找不到任何方法在 IE 中执行相同的操作。

最佳答案

一旦我开始以全尺寸加载缩略图,然后在加载后设置它们的宽度和高度,代码实际上就起作用了。

问题是我将周围的 div 设置为

display: none 

直到图像加载完成并且 IE 无法计算出隐藏图像的大小。

通过设置解决了这个问题

visibility: hidden

相反。

关于javascript - 在IE中获取图像的 'real'宽度和高度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6842177/

相关文章:

javascript - 使用 knockoutjs 中的复选框列表

javascript - 在 div 中显示上传的图片

html - CSS 限制边框大小

javascript - 如何解析html页面中的json数据

image - 裁剪、调整大小和缩放图像之间有什么区别?

javascript - dcjs、crossfilter - 如何完全处理图表

javascript - 如何防止此广告网络 http 请求?以及如何插入请求?

html - 如何在 html 中的 bootstrap 徽章顶部使用 glyphicon

vb.net - 如何将数据库中的图像添加到PictureBox?

java - 如何使用Java找到最大的图像?