2015-05-30 169 views
0

在我的扩展的manifest.json的,我加了这一点:Chrome扩展选项

"options_ui": { 
     "page": "options.html", 
     "chrome_style": true 
    }, 

我的选项页面(options.html)具有结束标记之前这一权利:

<script src="options.js"></script> 

options.html和options.js都在同一个文件夹中。 options.js始于此:

console.log('options.js'); 

问题:我加载正在开发的扩展(允许开发者模式)。我的选项页面显示正常,但脚本未加载。我已经在该文件中定义了事件处理程序,它们什么都不做。 options.js未被执行。

我按照所有说明here,但它只是不起作用。

回答

1

新的“chrome_style”选项实际上并没有显示任何记录到控制台槽console.log,你的脚本可能是好的,尝试添加一些东西到dom。

在脚本的开头添加这,看看发生在你的浏览器选项页中的任何错误:

var errorText = document.createElement("div"); 
document.body.appendChild(errorText) 
window.onerror = function (msg, file, line, column) { 
    errorText.innerHTML = msg + '<br>' + file + ' ' + line + ':' + column; 
} 

编辑: 选项界面内点击右键,选择“检查元素” ,它会打开相应的调试器。

+0

嗯,好吧。我做了你告诉我的并且看到它被加载了。所以现在我需要找出为什么事件处理程序不工作... – reggie

+0

是的选项页面开发是棘手的,因为你不能调试代码ether,请参阅我可以使用的脚本的更新答案。 –

+0

谢谢。这非常有帮助。我发现有一个'Uncaught TypeError:无法读取未定义'错误的属性'同步'。我必须为扩展设置存储权限。 – reggie

1

事实证明,新的options_ui确实会将事情记录到控制台,而不是您使用“查看”“Javascript控制台”查看的控制台。相反,请右键单击打开的选项页面和“检查元素”。这将带来正确的“开发者菜单”。