【问题标题】:how to parse a html string with Firefox add-on SDK without opening any window如何在不打开任何窗口的情况下使用 Firefox 附加 SDK 解析 html 字符串
【发布时间】:2014-11-15 04:38:00
【问题描述】:

我从github上下载了jquery模块,发现很多函数和对象都是未定义的。

  var Request = require("sdk/request").Request;
  var Jquery = require("jquery");
  var latestTweetRequest = Request({
  url: "https://example.com",
  onComplete: function (response) {
    var abc = Jquery.jquery(response);
  }
});

有没有什么轻量级的库可以帮到我

【问题讨论】:

标签: javascript jquery firefox-addon firefox-addon-sdk


【解决方案1】:

您可以使用内置的 DOMParser MJ Saedy 的精彩主题和解决方案:

https://stackoverflow.com/a/23207820/1828637

文档在这里:https://developer.mozilla.org/en-US/docs/Web/API/DOMParser?redirectlocale=en-US&redirectslug=DOM%2FDOMParser

虽然我不确定如何从 XPCOM 执行此操作,但必须有办法。

编辑: 从 XPCOM 和 addon-sdk 中了解了如何做到这一点。

这样做:

var DOMParser = Cc["@mozilla.org/xmlextras/domparser;1"].createInstance(Ci.nsIDOMParser);

有关插件 sdk 的详细信息,请参见此处:https://stackoverflow.com/a/9172947/1828637

111 /**
112  * Parse the given string into a DOM tree
113  *
114  * @param str       The string to parse
115  * @param docUri    (optional) The document URI to use
116  * @param baseUri   (optional) The base URI to use
117  * @return          The parsed DOM Document
118  */
119 cal.xml.parseString = function(str, docUri, baseUri) {
120     let parser = Components.classes["@mozilla.org/xmlextras/domparser;1"]
121                            .createInstance(Components.interfaces.nsIDOMParser);
122 
123     parser.init(null, docUri, baseUri);
124     return parser.parseFromString(str, "application/xml");
125 };

http://mxr.mozilla.org/comm-central/source/calendar/base/modules/calXMLUtils.jsm#120

【讨论】:

    猜你喜欢
    • 2012-02-28
    • 1970-01-01
    • 1970-01-01
    • 2020-10-27
    • 2011-05-15
    • 2016-06-11
    • 1970-01-01
    • 1970-01-01
    • 2021-06-26
    相关资源
    最近更新 更多