以前,我将代码片段(外观script.js)粘贴到控制台,并且可以正常工作。此代码在Salesforce / CloudCraze页面上操作DOM。现在,我希望在单击Chrome扩展小部件按钮后执行代码。
问题是:“未捕获的参考错误:未定义CCRZ” 。 CCRZ不是库,因此我无法像使用JQuery和Underscore一样解决此问题。
问题是:如何解决此问题或如何以其他方式使用小部件注入此代码?感谢您的帮助。
manifest.json
{
"manifest_version": 2,
"name": "CloudCraze Widget",
"description": "CloudCraze Widget",
"version": "1.0.0",
"permissions": ["tabs", "<all_urls>"],
"icons": {
"16": "resources/icon.png",
"48": "resources/icon.png",
"128": "resources/icon.png"
},
"background": {
"scripts": [
"js/script.js"
],
"persistent": true
},
"browser_action": {
"default_icon": "resources/icon.png",
"default_popup": "popup.html"
}
}
main.js
function runSwitchjs() {
chrome.tabs.executeScript({
file: 'js/underscore.min.js'
}, function(){
chrome.tabs.executeScript({
file: 'js/jquery.min.js'
}, function(){
chrome.tabs.executeScript({
file: 'js/script.js'
})
}
)}
);
}
document.getElementById('showButton').addEventListener('click', runSwitchjs);
script.js
function doSth() {
// logic
}
$.each(CCRZ.dynamicViews, function(view){
doSth();
// do sth else
});