当前位置:  开发笔记 > 编程语言 > 正文

我在代码中添加了10个函数,我甚至都没有调用它们,但代码停止工作!

如何解决《我在代码中添加了10个函数,我甚至都没有调用它们,但代码停止工作!》经验,为你挑选了2个好方法。

单独,这段代码有效:

CustomButton = {

1: function () {
  alert("Just testing") 
  },

}

我添加下面的代码,上面的代码停止工作:

function getvisitingnow() {
    return document.location;
}
function getcontents(uri) {
    var req = new XMLHttpRequest();
    req.open('GET', uri, true);
    req.onreadystatechange = function (aEvt) {
        if (req.readyState == 4) {
            if(req.status == 200) {
                return req.responseText;
            }
        }
    };
    req.send();
}
function regexforsitefound(uri, searchcontents) {
    var re = new RegExp("\\
.*?(?:\\.*?){2}\\", "mi"); var sitefound = searchcontents.match(re); if (sitefound[0]) return sitefound[0] else return null; } function regexforcategoryfound(uri, searchcontents) { var re = new RegExp("\\
.*?(?:\\.*?){2}\\", "mi"); var categoryfound = searchcontents.match(re); if (categoryfound[1]) return categoryfound[1] else return null; } function regexfordomainname(uri) { var re = new RegExp("http://(?:[A-Za-z0-9-]+\\.)?[A-Za-z0-9-]+\\.[A-Za-z0-9-]+/?", "si"); var domainname = uri.match(re); if (domainname) return domainname; } function regexforparentdir(uri) { var re = new RegExp("http://(?:[A-Za-z0-9-]+\\.)?[A-Za-z0-9-]+\\.[A-Za-z0-9-]+/?", "si"); var parentdir = uri.match(re); if (parentdir) return parentdir; } function getcomparisonlink(visitingnow) { var searchuri = null; var searchcontents = null; var uri = visitingnow; while(true) { searchuri = 'http://www.google.com.br/search?'; searchuri += 'q='+ uri +'&btnG=Search+Directory&hl=en&cat=gwd%2FTop'; searchcontents = getcontents(searchuri); var sitefound = regexforsitefound(searchcontents); if (sitefound) { var categoryfound = regexforcategoryfound(searchcontents); if (categoryfound) { return categoryfound; } } else { var domainname = regexfordomainname(uri); if (!domainname) { var parentdir = regexforparentdir(uri); uri = parentdir; } else { return null; } } } } function clickedlink(event){ var visitingnow = getvisitingnow(); if (visitingnow) { getcomparisonlink(visitingnow); if (comparisonlink) { tab.open(comparisonlink); }; } } function createBookmarkItem() { const XUL_NS = "http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"; var item = document.createElementNS(XUL_NS, "toolbarbutton"); item.setAttribute("id", "Testing-Doit-Button2"); item.setAttribute("class", "bookmark-item pagerank"); item.setAttribute("tooltiptext", "Do it!"); item.setAttribute("oncommand", "testing_doit();"); return item; } function placeBookmarkItem() { var toolbar = document.getElementById("PersonalToolbar"); var button = createBookmarkItem(); toolbar.appendChild(button); }

为什么?



1> Paul..:

尝试逐个添加您的功能.看看你的代码停止工作的功能.然后清空功能内容,一次只能将它放回去.再次检查代码停止工作的位置.关于应该有一个语法错误.

但正如Bobby建议的那样,更简单的方法是尝试使用Firefox Errorlog,或者使用Firebug.



2> Oscar Kilhed..:

一个小的JavaScript错误可能会破坏很多东西.你忘了在两个地方添加分号.

在sitefound [0]之后需要有一个分号:

function regexforsitefound(uri, searchcontents) {
    var re = new RegExp("\\

这里有一个类别[1]之后:

function regexforcategoryfound(uri, searchcontents) {
    var re = new RegExp("\\

推荐阅读
地之南_816
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有