`
zuroc
  • 浏览: 1292273 次
  • 性别: Icon_minigender_1
  • 来自: 江苏
社区版块
存档分类
最新评论

Firefox插件(XUL)开发 学习笔记 3. Atom解析

阅读更多
[size=large]
不多说了,看附件中的插件,还剪裁了一个ff only的jquery:)

发现了一个XUL教程
http://developer.mozilla.org/index.php?title=Cn/XUL_%E6%95%99%E7%A8%8B
   
ok,言归正传,Atom解析参见
http://developer.mozilla.org/en/Feed_content_access_API

FeedTestResultListener=function(){}
FeedTestResultListener.prototype = {
      handleResult: function(result) {

        var feed = result.doc;

        feed.QueryInterface(Components.interfaces.nsIFeed);
        content=feed.title.text+"\n"
        
        var itemArray = feed.items;
        var numItems = itemArray.length;
       
          var i;
          var theEntry;
          var info;
          
          for (i=0; i<numItems; i++) {
            theEntry = itemArray.queryElementAt(i, Components.interfaces.nsIFeedEntry);
            
            if (theEntry) {
               if(theEntry.link)    content += theEntry.link.resolve("")+"\n"
               if(theEntry.title.text) content += theEntry.title.text
              if (theEntry.summary) info = theEntry.summary.text
              else info = theEntry.content.text 
              content+=info+"\n"
            }
          }
        alert(content)
      }
    }

function fetch(url,listener){
    $.get(url,{},function (data) {
        var ioService = Components.classes['@mozilla.org/network/io-service;1']
                                         .getService(Components.interfaces.nsIIOService);
      var uri = ioService.newURI(url, null, null);
        var parser = Components.classes["@mozilla.org/feed-processor;1"]
                                        .createInstance(Components.interfaces.nsIFeedProcessor);
        try {
          parser.listener = listener;
          parser.parseFromString(data, uri);
        }catch(e) {
          alert("Error parsing feed.");
        }
    },"text")
}
fetch("http://api.douban.com/people/zuroc/miniblog",new FeedTestResultListener())
[/size]
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics