SubString在RSS feed Jquery中不起作用

时间:2013-11-25 09:33:59

标签: jquery rss

在我的下面的代码中,我从Feedburner {shortBodyPlain}获取此变量中的参数日期,现在我需要将其子串以获取日期和月份,我该如何实现它?此外,如何在jquery中使用变量{date},{title}?

<script language="javascript" type="text/javascript" src="http://code.jquery.com/jquery-1.9.1.js"></script>
<script type="text/javascript" src="http://sdepold.github.io/jquery-rss/src/jquery.rss.js"></script>
<script type="text/javascript">
    $(function(){
        $("#events").rss("http://feeds.feedburner.com/google/lkRN", {
            limit: 4,
            layoutTemplate: '<span id="entries">{entries}</span>',
            entryTemplate: '{date} <a href="{url}">{title}</a><br>'
        }).show();
    });
</script>
<div id="events"></div>

2 个答案:

答案 0 :(得分:1)

你可以通过添加一个(几乎)“没有”的令牌来尝试“欺骗”你的方式。

例如,让我们创建一个令牌{alert-date}

$("#events-output").rss("http://feeds.feedburner.com/google/lkRN", {
    limit: 4,
    tokens: {
        'alert-date': function (entry, tokens) {
            alert(tokens.date);
            return '';
        },
    },
    layoutTemplate: '<span id="entries">{entries}</span>',
    entryTemplate: '{date} <a href="{url}">{title}</a><br>{alert-date}'
}).show();

这样您就可以创建一个函数,每次生成一行时都会生成令牌内容。您返回空字符串,因此令牌从输出内容消失,但该函数的代码实际上已运行。您可以将令牌放在模板中的任何位置 - 无论如何它始终是空的。请记住,不是警告tokens.date变量的内容,而是将它们存储在某个地方供以后使用。

请在令牌功能中运行console.log(tokens) - 您可以看到所有令牌的内容,而不需要像其他人提议的那样解析HTML。

看小提琴:http://jsfiddle.net/w6zAf/


如何从日期获取更多信息?

您可以从XML生成日期。它在javascript中很容易,因为它可以为您完成所有工作。您可以生成新的对象日期,而不是在上面的代码中编写alert(tokens.date)

var date = new Date(tokens.date);
var month = date.getMonth();

更多信息:http://www.w3schools.com/jsref/jsref_obj_date.asp


创建令牌月和日

$("#events-output").rss("http://feeds.feedburner.com/google/lkRN", {
    limit: 4,
    tokens: {
        'month': function (entry, tokens) {
            var date = new Date(tokens.date);
            return date.getMonth();
        },
        'day': function (entry, tokens) {
            var date = new Date(tokens.date);
            return date.getDay();
        },
    },
    layoutTemplate: '<span id="entries">{entries}</span>',
    entryTemplate: '{date} <a href="{url}">{title}</a><br>'
}).show();

答案 1 :(得分:0)

您可以在js:

中按以下方式获得{date},{title}的值
var d = '{date}';
var t=  '{title}';