Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/70.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery 获取按高度(以%为单位)调整大小的div的宽度(以px为单位)_Jquery_Html_Css - Fatal编程技术网

Jquery 获取按高度(以%为单位)调整大小的div的宽度(以px为单位)

Jquery 获取按高度(以%为单位)调整大小的div的宽度(以px为单位),jquery,html,css,Jquery,Html,Css,我有一个按高度调整大小的div,它的宽度是空的 HTML 为了在页面上放置其他元素,我需要以px为单位获取其当前宽度。我尝试了以下方法,但是因为CSS没有宽度,所以var的值是0 $(document).ready(function() { var divWidth = $('#slideshow').width(); }); 更新 我发现了问题,子img加载有一个编程延迟,因此显然var的初始值为0。有没有办法延迟获取div的宽度?您可能希望等待窗口完全加载。我也为您添加了一个se

我有一个按高度调整大小的div,它的宽度是空的

HTML

为了在页面上放置其他元素,我需要以px为单位获取其当前宽度。我尝试了以下方法,但是因为CSS没有宽度,所以var的值是0

$(document).ready(function() { 
    var divWidth = $('#slideshow').width();
});
更新
我发现了问题,子img加载有一个编程延迟,因此显然var的初始值为0。有没有办法延迟获取div的宽度?

您可能希望等待窗口完全加载。我也为您添加了一个setTimeout,因为您需要它

$(window).load(function() {
    setTimeout(function() {
        var divWidth = $('#slideshow').width();
        // put your function using divWidth in here as well.
    }, 500);
});

工作正常-。就像你一样,我看不出代码失败的任何原因,除非你有多个具有该id的div,并且里面没有图像,请检查代码的其余部分,因为它可以正常工作。快速解决方法是使用jQuery的load方法?类似这样的东西:
$(“#slideshow img”).load(function(){/*do div width here?*/})
$(document).ready(function() { 
    var divWidth = $('#slideshow').width();
});
$(window).load(function() {
    setTimeout(function() {
        var divWidth = $('#slideshow').width();
        // put your function using divWidth in here as well.
    }, 500);
});