我使用naturalHeight
和naturalWidth
有时加载页面时我的宽度和高度为0(其他时候工作正常)。 我想这是因为它在加载图像之前计算尺寸。
我该如何纠正?
我曾尝试在$("selector").myplugin()
内运行插件$(document).ready
,但这并没有改变任何内容
我还尝试将setTimeout
包裹在我使用naturalHeight
和naturalWidth
的变量周围,但这并不能阻止其余的代码运行 - 而且我不会使加载速度慢于必要(如果没有必要,请将setTimeout
中的所有内容包起来)
所以我的问题 - 有没有办法
或者有人有其他解决方案吗?
答案 0 :(得分:0)
准备等待只加载dom,你可以在你的图像上使用load()顺序,在这种情况下,你不要等到所有的窗口榆树都被加载
在加载图片后看下面的片段,最后一个的大小打印在底部,
$(function(){
$( "#img" ).load(function() {
console.log($(this).width()+"-"+$(this).height())
});
})

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<img id="img" src="https://cdn.pixabay.com/photo/2017/09/07/14/15/wide-2725426_960_720.jpg" >
&#13;