jQuery-无法获取使用load()方法从另一个文件加载的标头的高度

时间:2019-02-11 11:29:28

标签: javascript jquery html5

我是jQuery的新手。实际上,我想获取来自其他文件的标头的高度。我已使用load()方法显示标题。我尝试了一些代码来获取高度。但这并没有解决。 那么在这里可以得到高度吗?请帮我。预先感谢。

3 个答案:

答案 0 :(得分:1)

假设您的标头具有myHeader的id属性:

$( "#result" ).load( "ajax/test.html");
    setTimeout(function(){
        var height = $('#myHeader').height();
        alert(height);
    },200);

答案 1 :(得分:0)

您应该使用.load方法提供的回调函数。此功能用于在请求完成后处理代码。

$( "#result" ).load( "ajax/header.html", function() {
    var height = $('header').height();
    console.log(height);
});
  

如果提供了“完整”回调,则在   后处理和HTML插入已执行。回调是   为jQuery集合中的每个元素触发一次,并且已设置   依次访问每个DOM元素。

     

http://api.jquery.com/load/#callback-function


如注释中所述,您想在函数外部使用height 变量。作为解决方案,您可以创建一个传递给回调函数的函数。

$( "#result" ).load( "ajax/header.html", function() {
    var height = $('header').height();

    // Call function
    do_something_with_header( height );
});

// Call this function in your load callback
function do_something_with_header( height ) {
    console.log( height );
}

答案 2 :(得分:0)

创建一个全局变量并分配以使用外部函数