首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在页面完全加载后获取innerHTML

在页面完全加载后获取innerHTML
EN

Stack Overflow用户
提问于 2016-11-28 02:05:14
回答 3查看 1.8K关注 0票数 3

我正在尝试一个带有tweet按钮的make随机报价机来发布引用。随机引语很好。密码..。

代码语言:javascript
复制
var forismaticAPI = 'http://api.forismatic.com/api/1.0/?method=getQuote&format=jsonp&lang=en&jsonp=?';
$(document).ready(function() {
    var template = function(data) {
        $('#quotearea').empty();
        $('#quotearea').append('<blockquote id="quote">' + data.quoteText + '</blockquote>' + '<p id="author"> —  ' + data.quoteAuthor + '</p>');
        $('#quotearea').show();
    };

    var dataAppend = function() {
        $.getJSON(forismaticAPI, template);
    };
}

我的下一个任务是让引用的内容被推特。因此,一旦窗口完全加载,我想得到包含引号的innerHTML of #quote。所以我写了一个这样的window.onload函数。

代码语言:javascript
复制
window.onload = function(){
    var quote = document.getElementById('quote');
    console.log(quote.innerHTML);

}

但是我得到了一个错误Uncaught TypeError: Cannot read property 'innerHTML' of null(…)..。因为加载引号有很小的延迟,所以window load函数返回一个null。如何仅在加载并准备好内容时才获得div的innerHTML?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2016-11-28 02:11:42

#quote元素是在window.onload事件之后创建的,因为它只在ajax调用返回时创建。将代码从onload移动到ajax调用的success,正如BlueBoy在注释中所建议的那样。在您的示例中,成功函数是您命名为template的函数。

您可以在创建元素后立即访问它:

代码语言:javascript
复制
var template = function(data) {
    $('#quotearea').empty();
    $('#quotearea').append('<blockquote id="quote">' + data.quoteText 
    + '</blockquote>' + '<p id="author"> —  ' + data.quoteAuthor + '</p>');
    $('#quotearea').show();

    console.log(document.getElementById('quote'));
};

不能对尚不存在的DOM元素调用innerHTML方法。因此,您可以运行函数的第一分钟是在append()调用之后,它使用和id of quote创建DOM元素。

票数 3
EN

Stack Overflow用户

发布于 2016-11-28 02:17:48

没有经过测试,我猜在文档准备好之前,onload就已经启动了。因此,您可能希望在写入内容时设置一个标志,然后检查第二个函数,如果null计划使用setTimeout()在100 ms内再次运行它。

票数 0
EN

Stack Overflow用户

发布于 2016-11-28 02:19:29

使用html函数?

代码语言:javascript
复制
var code = $('#quotearea').html();
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40836174

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档