我已经设法让我的大部分Chrome扩展程序正常工作,但是有一个问题我无法解决。
如果需要,可以在此处抓取并将其加载为解压缩的扩展程序:http://www.filedropper.com/tester
加载后就像这样工作。
1)系统会提示您需要在选项页面上输入URL。
2)您在选项页面上输入一个URL(例如http://digg.com),然后单击“保存”,然后单击工具栏中的图标,您可以看到弹出窗口中显示的网页。
3)这是问题所在 - 如果您然后从选项页面中删除URL并单击保存,则弹出窗口不会显示他们在开头看到的原始提示页面。
我认为这段代码(来自popup.js)有问题,但我不明白为什么它不起作用。
var url = localStorage.url;
var alturl = chrome.extension.getURL("need-to-enter-url.html");
var element = document.getElementById("testerURL");
if (url != undefined || url != null) {
element.src = url;
} else {
element.src = alturl;
};
感谢任何帮助。
答案 0 :(得分:2)
当您“删除”url
时,实际上是在保存一个空字符串。 localStorage.url = ""
所以你的价值检查失败了。我还建议调整if逻辑以使其更清晰。
使用类似的东西:
if (url === undefined || url === null || url === "") {
element.src = alturl;
} else {
element.src = url;
}
您可以选择依赖JavaScript's truthiness。
if (url) {
element.src = url;
} else {
element.src = alturl;
}