jQuery能否获取尚未绘制的动态元素的大小 [英] can jQuery get the size of a dynamic element that has not been drawn

查看:55
本文介绍了jQuery能否获取尚未绘制的动态元素的大小的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我的意思是,如果我使用jQuery和DOM创建一个元素

What i mean is if i create a Element with jQuery and DOM

var MainHolder = $(document.createElement("div")).addClass("box");

如果我要调用MainHolder.width()而不在窗口中绘制元素,那将是切割刀并计算出它是从.box CSS类获取宽度的,还是只是返回0(因为未绘制),所以它可以不能解决吗?

if i was to call MainHolder.width() without drawing the element in the window would it be cleaver and work out that it gets the width from the .box CSS class or would it just return 0 as it's not drawn so it can't work it out?

推荐答案

您可以绘制元素,获取宽度并取消绘制:

You could draw the element, get the width, and undraw it:

var MainHolder = $(document.createElement("div")).addClass("box").css({
    position: "absolute",
    left: -9999
}).appendTo("body");

var width = MainHolder.width();

MainHolder.css({
    position: "static",
    left: "auto"
}).detach();

这篇关于jQuery能否获取尚未绘制的动态元素的大小的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆