在jQuery中,当元素不可见时width()
返回0。
当我移除手风琴时,正确报告高度。我尝试将图像包装在div中并将div的显示设置为阻止,但这也不起作用。
当手风琴应用时,有什么替代方法可以找到图像的原始尺寸吗?
<div id="accordion">
<h3>Click me</h3>
<div>
<div class="bg">
<img src="your_img_url">
</div>
</div>
<h3>Click me</h3>
<div>
<div class="bg">
<img src="your_img_url"/>
</div>
</div>
</div>
$(document).ready(function() {
$('#accordion').accordion({
autoHeight: false,
collapsible: true,
});
$("img").load(function() {
alert($(this).height());
alert($(this).width());
});
});
答案 0 :(得分:0)
适合我!
你有手风琴插件吗?
如果不是:http://bassistance.de/jquery-plugins/jquery-plugin-accordion/
是否已添加到脚本中?
,
到collapsible: true,
$(document).ready(function() {
$('#accordion').accordion({
autoHeight: false,
collapsible: true
});
$("img").load(function() {
alert($(this).height());
alert($(this).width());
});
});
但它无论如何都有效!
答案 1 :(得分:0)
在图像上设置特定的宽度和高度将返回该宽度和高度。这可以在CSS中完成,也可以使用width
元素上的height
和<img>
属性完成。
将图片更改为<img src="your_img_url" style="height: 20px; width: 20px;">
应该有效。
如果您需要原始宽度,可以执行以下操作:
var img = $('img').clone().appendTo('body').hide();
img.load(function () {
alert($(this).width());
alert($(this).height());
});
This answer提供了有关如何获取原始尺寸的更详细信息。