改变动态JavaScript数据

时间:2015-03-08 22:25:29

标签: javascript jquery

我一直在讨论这个问题,我确信有办法绕过它。

目前我正在建立一个拥有许多博客的网​​站。博客有一个RSS源,我可以使用一个简洁的小jquery脚本,我发现从博客中提取数据,如博客标题,博客日期,博客图像等。

我使用的脚本使用短代码来渲染这些属性,例如:

<script type="text/javascript" src="http://cdn2.hubspot.net/hub/213747/file-722482310-js/scripts/jquery.rss.js"></script>
<script type="text/javascript">
  jQuery(function($) {
    $("#tech_feed").rss("http://www.example.com/big-data/rss.xml", {
      limit: 1,
      entryTemplate:  '<h1 id="blog_title">{blog-title}</h1>'
});
</script>

这很有效,并带来了标题。但是我想使用Jquery在这个标题上做一个子串或切片,但由于它是动态添加的,我似乎无法抓住它。我可以在控制台中执行此操作,但我需要做什么才能抓住它#39;它被加载为HTML后?这可能吗?

2 个答案:

答案 0 :(得分:1)

看起来你正在使用的插件有一个回调参数。所以,你可以这样做:

$(function() {
    $("#tech_feed").rss("http://www.example.com/big-data/rss.xml", {
        limit: 1,
        entryTemplate:  '<h1 id="blog_title">{blog-title}</h1>'
    }, function() {
        //Do your thing here where the feed has been loaded;
        //Such as
        alert ( $("#blog_title").text() );
    });
});

答案 1 :(得分:0)

编辑:

阅读完评论后,您希望在数据到达后在回调中操作:

$("#tech_feed").rss("http://www.feedforall.com/sample.xml", {
  limit: 1,
  entryTemplate:  '<h1 id="blog_title">{title}</h1>'}, function() {  });

如下所示: http://jsfiddle.net/heavyhorse/rz59L0r2/

如果你想修改元素的内部html,请在数据到达后尝试这样的事情:

$('#blog-title').text(newTitleData);

http://jsfiddle.net/heavyhorse/y78phrv5/