我有一个div标签
<div id="openfrag">
<script language="JavaScript" src="http://ad.uk.doubleclick.net/adj/BA_HOME/HP_Public_MSB; dcopt=ist;sz=728x90,468x60;tile=1;lan=en;ord=1265795605?" type="text/javascript"></script>
</div>
以上脚本标记是第三方网址,可能会返回图像或Flash对象或任何其他任何大小的.. 如何使用jquery确定div标签占用的动态宽度和高度?
我试过$(“#openxfrag”)。width(),但它总是返回与css中定义的宽度相同的
答案 0 :(得分:3)
在内容加载到后检查宽度。您可以检查宽度或外部宽度:
$("#openfrag").width();
$("#openfrag").outerWidth();
outerWidth
包括填充和边框。
如果您使用CSS设置默认宽度,您可以考虑删除它(因为它会覆盖自然宽度)或将其替换为min-width
(假设未来的宽度会更大)。
答案 1 :(得分:3)
我试过$(“#openxfrag”)。width(),但它总是返回与css中定义的宽度相同的
为什么不会呢?如果你在CSS中为它指定一个宽度,那么就是它所拥有的宽度!如果您希望其宽度由其内容决定,则必须避免指定宽度......并且您必须make it shrink-wrap the contents。
只有这样,你才能期望$("#openfrag").width()
做一些有用的事情。
答案 2 :(得分:0)
最简单的方法是创建一个新的隐藏div,然后检查其宽度。它将是其内容的大小,因为它没有定义CSS,并将扩展以适应其内容。
HTML:
<div id="getWidth" style="display: none;">
<!-- Put contents here -->
</div>
JavaScript的:
<script type="text/javascript">
console.log($("#getWidth").width());
</script>