使用jQuery開發一個響應式超酷整合RSS信息閱讀雜誌

 
申請達人,去除贊助商連接

若是你們喜歡閱讀博客文章的話,可能都會使用RSS閱讀器,今天這裏咱們將使用jQuery來開發一個響應式的RSS信息閱讀應用,使用它你能夠將你喜歡的RSS文章以聚合的方式顯示在同一個頁面,相似一本在線的雜誌或者刊物,你也能夠自定義配置用來設定須要訪問的RSS源,但願你們喜歡!javascript

使用的js類庫和jQuery插件:css

HTML代碼

HTML代碼很是簡單,由顯示內容,RSS設置窗口及其遮蓋層組成html

生成RSS閱讀信息內容的html代碼以下:java

  1. <div id="title">
  2. <h1 style="padding:10px;font-size:50px;">gbin1 rss feed magazine</h1>
  3. <div id="config"><a id="setting" href="#"></a></div>
  4. </div>
  5. <div id="content"></div>

 

生成RSS配置彈出窗口及其遮蓋層html代碼以下:jquery

  1. <div id="modelwrapper"></div>
  2. <div id="model">
  3. <h2>add new feed</h2>
  4. <div>
  5. RSS url: <input id="rssvalue"type="text" placeholder="eg. http://feed.feedsky.com/GBin1" /><input type="button" value="save" id="saverss"/><input type="button" value="+" id="addrss"/>
  6. </div>
  7. <ul id="rsslist">
  8. </ul>
  9. </div>
 
 

 

Javascript代碼

從Cookie中取得當前的RSS內容,這裏使用sociallist插件來取得RSS信息內容,而且使用cufon來美化字體:css3

  1. $(document).ready(function () {
  2. $('#setting').animate({opacity:0.4}).animate({opacity:1})
  3. Cufon.replace('body').CSS.ready(function() {
  4. if (cookie.enabled()) {
  5. } else {
  6. alert('you need to enable the cookie, thanks!');
  7. }
  8. var rsslinks = cookie.get('gbin1-rsslinks');
  9. if(rsslinks==null){
  10. cookie.set('gbin1-rsslinks', 'http://feed.feedsky.com/GBin1');
  11. rsslinks = 'http://feed.feedsky.com/GBin1';
  12. }
  13. var rsslinklist = rsslinks.split('|');
  14. var rsslistarray = new Array();
  15. for(a=0;a<rsslinklist.length;a++){
  16. if(rsslinklist[a].trim()!==''){
  17. rsslistarray.push({name:'rss', id:rsslinklist[a]});
  18. }
  19. }
  20. $('#content').socialist({
  21. networks: rsslistarray,
  22. isotope:true,
  23. random:false,
  24. textLength: 800,
  25. theme: 'none',
  26. maxResults: 50,
  27. fields:['source','heading','text','date','image','followers','likes']
  28. });
  29. });
  30. });
 

 

使用jQuery開發一個超酷的整合RSS信息閱讀雜誌

下面代碼控制彈出的RSS配置對話框,而且保存RSS到用戶當前瀏覽器的cookie中:web

  1. $(function(){
  2. $('#config').on('click', function(){
  3. console.log('config');
  4. var model = $('#model');
  5. var w = $(window).width();
  6. var h = $(window).height();
  7. var left = w/2 - model.outerWidth()/2;
  8. var top = h/2 - model.outerHeight()/2;
  9. $('#modelwrapper').fadeIn();
  10. $('#model').animate({left:left, top:top}).fadeIn();
  11. var rssliststr = '';
  12. var rsslinks = cookie.get('gbin1-rsslinks');
  13. var rsslinklist = rsslinks.split('|');
  14. for(a=0;a<rsslinklist.length;a++){
  15. if(rsslinklist[a].trim()!==''){
  16. rssliststr += '<li><a style="color:red" class="deleteit" href="#">[x]</a>&nbsp;<span>' + rsslinklist[a] + '</span></li>';
  17. }
  18. }
  19.  
  20. $('#rsslist').html(rssliststr);
  21. Cufon.refresh();
  22. });
  23. var addcxt = $('#addrss').on('click', function(){
  24. var url = $('#rssvalue').val(),
  25. rss = '<span>' + url + '</span>',
  26. addbutton = $('#addrss');
  27. $(this).val('add...');
  28. $.getFeed({
  29. url: url,
  30. success: function(feed) {
  31. console.log(feed.title);
  32. $('#rsslist').append('<li><a style="color:red" class="deleteit" href="#">[x]</a>&nbsp;' + rss + '</li>');
  33. Cufon.refresh();
  34. addbutton.val('+');
  35. },
  36. error: function(){
  37. alert('Please ensure it is a valid RSS url');
  38. addbutton.val('+');
  39. }
  40. });
  41.  
  42. });
  43. $('#saverss').on('click', function(){
  44. var rsslinks='';
  45. $('#model').fadeOut(400);
  46. $('#modelwrapper').fadeOut(600);
  47. $('#rsslist li').each(function(){
  48. rsslinks = rsslinks + '|' + $(this).find('span').text();
  49. });
  50. cookie.set('gbin1-rsslinks', rsslinks, {
  51. expires: 30
  52. });
  53. location.reload();
  54. });
  55. $('#rsslist').on('click', '#rsslist .deleteit', function(){
  56. $(this).closest('li').remove();
  57. });
  58. });
 
 

 

注意以上代碼咱們本身實現了一個遮蓋層來突顯對話框效果,而且在用戶保存RSS前判斷RSS地址是否正確。瀏覽器

在線演示 

咱們添加一個新的RSS地址: http://www.leiphone.com/feed (雷鋒網)cookie

使用jQuery開發一個超酷的整合RSS信息閱讀雜誌

使用jQuery開發一個超酷的整合RSS信息閱讀雜誌

保存RSS地址後返回主界面顯示全部的RSS內容:app

使用jQuery開發一個超酷的整合RSS信息閱讀雜誌

你們能夠看到列出了gbin1和雷鋒網的全部最新的RSS文章種子。若是你縮放瀏覽器窗口,能夠看到內容隨着窗口大小自適應顯示,是否是很不錯?

但願你們喜歡這個在線整合RSS閱讀雜誌,若是你有任何問題,請給咱們留言,謝謝!

相關文章
相關標籤/搜索