jq 获取图片的高和宽度

jnzsk 2020-04-08 09:22:55

    <img alt="" style="display:none" id="displayimg"/>



$("#displayimg").attr("src", src);
$("#displayimg").height();
$("#displayimg").width();

获取的宽度和高度都为0,请问这是为什么?
...全文
295 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
1、图片加载、DOM渲染需要时间 2、display===none的DOM节点无高宽
  • 打赏
  • 举报
回复
如果在想为什么为0 你打断点看看img1的值就知道了
  • 打赏
  • 举报
回复
我手上没JQ 所以用js写了个
JQ的你看着改

<script type="text/javascript">
function getcontent(){
var img1 = document.getElementById('mm');
document.getElementById('text1').value=img1.clientWidth;
document.getElementById('text2').value=img1.clientHeight;
debugger;
}
</script>
<body>
<div id="app">
</div>
<button onClick="getcontent()">按钮</button>
宽度:<input id="text1" class="vv" type="text" value="" />

高度:<input id="text2" class="vv" type="text" value="" /><img src="./img/123.png" title="11" id="mm" />
<!-- built files will be auto injected -->
</body>
E次奥 2020-04-08
  • 打赏
  • 举报
回复
load是异步执行的,所以外边先输出了;
jnzsk 2020-04-08
  • 打赏
  • 举报
回复

var src="xxxx.jpg";
var height_v, width_v;
$("#displayimg").attr("src", src);
$("#displayimg").on("load", function () {
height_v = $("#displayimg").height() / 2;
width_v = $("#displayimg").width() / 2;
});
console.log(height_v);
console.log(width_v);



height_v和width_v 都为“undefined”!请问是什么原因?
_念_ 2020-04-08
  • 打赏
  • 举报
回复
$("#displayimg").attr("src", src);
$("#displayimg").on("load", function() {
 $("#displayimg").height(); 
 $("#displayimg").width();
})
liu_lei 2020-04-08
  • 打赏
  • 举报
回复

87,910

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧