【问题标题】:Jquery: Wrap dynamically created content sourced from APIJquery:包装源自 API 的动态创建的内容
【发布时间】:2013-05-18 06:04:07
【问题描述】:

我正在使用 Tumblr API 在我的网站上创建新闻提要。目前,对于每个帖子,API 返回:

<div class="posttitle">TITLE</div>
<div class="postbody">content</div>

为了使样式更容易,我想将它们包装在一个 div 中,所以我写道:

$('#newsbox > .posttitle').each(function(){
    $(this).next('.postbody').andSelf().wrapAll('<div class="tumblrpost"/>');
});

但是,我无法让它工作。这可能是因为 Tumblr 帖子是动态创建的,并且在 JQuery 运行时首先不是 DOM 的一部分?

我把上面的脚本放在了API脚本之后,但是没有区别。

有人知道实现这种包装的正确方法吗?

编辑:

API:http://jsfiddle.net/tgAUJ/

【问题讨论】:

  • 请发布您如何生成 tumblr 帖子。如果你必须摆弄它(jsfiddle.net)
  • 同意你如何采购它开始等等。
  • @SébastienRenauld 在上面添加,谢谢!
  • 您是否将 wrapAll 代码放入成功?确保它不在 $.ajax 之后,因为那时还没有创建那些 DOM 元素。
  • @Bemmu 不,我刚刚将脚本完全放在了文档的末尾。我会尝试这种方式

标签: javascript jquery json dynamic tumblr


【解决方案1】:

现在可以使用正确代码的更新小提琴:http://jsfiddle.net/tgAUJ/1/

我所做的只是在一段时间后将您的代码放入结果函数中。我还更正了 while,如果您返回的条目少于 5 个(不太可能但可能),它不会出错。模组如下:

if (!results.response.posts[i]) break;

请注意,您必须将您的私钥放回原处。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-02-13
    • 1970-01-01
    • 2013-03-22
    相关资源
    最近更新 更多