我可以在javascript中创建一个函数来绕过递归代码吗?

时间:2016-09-19 06:44:44

标签: javascript

我对JS不太安静。我正在研究Rss解析器。这是我正在使用的Js。因此,对于每个Feed链接,我必须重复整个代码。 (部分限制:140至)

可以做得更小,重复性更低吗?所以,每次我添加任何新ID的新链接,我不必复制以下所有细节。

function load_rss(){

 $("#rss-container").rss("http://www.hindufaqs.com/feed/", {
    limit: 140,
    ssl: true,
    effect: 'show',
    dateFormat: 'MMMM DD, YYYY',
    entryTemplate: 
    "<a class='entry_link' href='{url}'>\
      <div class='entry'>\
        <div class='entry_date'>\
          Submitted: {date}\
          <span class='entry_by'>by: {author}</span>\
          \
        </div>\
        <div class='entry_img'>\
          {teaserImage}\
        </div>\
        <div class='entry_title'>\
          {title}\
        </div>\
        <div class='entry_details'>{shortBody}</div>\
      </div>\
    </a>",
  });
}

$(function(){
  load_rss();
});

1 个答案:

答案 0 :(得分:1)

参数化load_rss

function load_rss(target, url){
  $(target).rss(url, {
    limit: 140,
    ssl: true,
    effect: 'show',
    dateFormat: 'MMMM DD, YYYY',
    entryTemplate: 
    "<a class='entry_link' href='{url}'>\
      <div class='entry'>\
        <div class='entry_date'>\
          Submitted: {date}\
          <span class='entry_by'>by: {author}</span>\
          \
        </div>\
        <div class='entry_img'>\
          {teaserImage}\
        </div>\
        <div class='entry_title'>\
          {title}\
        </div>\
        <div class='entry_details'>{shortBody}</div>\
      </div>\
    </a>"
  });
}

然后你可以这样做:

$(function(){
  load_rss("#rss-container", "http://www.hindufaqs.com/feed/");
  load_rss("#rss-container2", "different url");
  load_rss("#rss-container3", "and another");
});