【问题标题】:Javascript regex in firefox extensionFirefox 扩展中的 Javascript 正则表达式
【发布时间】:2009-11-06 20:30:54
【问题描述】:

这里可能出了什么问题?问题似乎与正则表达式匹配语句有关。没有它,警报就会来,但只要我把它放进去,一切都会安静下来。非常感谢!通配符只是为了帮助查明问题,它不是目标,我确实需要正则表达式。

window.addEventListener("load", function() { myExtension.init(); }, false);

var myExtension = {
  init: function() {
    var appcontent = document.getElementById("appcontent");   // browser
    if(appcontent)
      appcontent.addEventListener("DOMContentLoaded", myExtension.onPageLoad, true);
    var messagepane = document.getElementById("messagepane"); // mail
    if(messagepane)
      messagepane.addEventListener("load", function () { myExtension.onPageLoad(); }, true);
  },

  onPageLoad: function(aEvent) {
    var doc = aEvent.originalTarget; // doc is document that triggered "onload" event
    // do something with the loaded page.
    // doc.location is a Location object (see below for a link).
    // You can use it to make your code executed on certain pages only.

    var url = doc.location;  // i have also tried doc.location.href

    if (url.match(.*)) {alert( url );}

  }
}

【问题讨论】:

    标签: javascript regex firefox-addon match


    【解决方案1】:

    match 接受一个正则表达式对象。正则表达式对象可以用 /regex here/ 形式的字面量构造(注意斜线)。

    使用您的代码,您应该会看到向Error Console 报告的语法错误。

    [编辑] 100% 清晰,您需要 .match(/.*/) 而不是 .match(.*)

    【讨论】:

    • 我没有意识到斜线是其中的一部分,以为它们只是 标记。谢谢。
    • 我考虑过发布这个答案,但我在二年级时阅读了这个问题。
    猜你喜欢
    • 1970-01-01
    • 2016-09-26
    • 2012-02-13
    • 1970-01-01
    • 1970-01-01
    • 2011-11-27
    • 1970-01-01
    • 2023-03-14
    • 1970-01-01
    相关资源
    最近更新 更多