我目前正在撰写Chrome扩展程序,其基本功能是作为快速选择工具。这意味着我正在使用通过ASP.NET网站实现的文件分类界面,我必须在上传时选择描述特定文件的特定值(例如日期,描述,标签等)。因此,我决定使用Chrome的开发工具来构建一个易于使用的上下文菜单(您只需右键单击页面),该菜单提供了一个预定义规则列表,点击后填写所有相应字段(文本框,下拉列表等自动在页面上。
事情是,有很多这些预定义的规则,它们很容易改变,大多数都有子节点(例如:规则1包含1.1,1.2等),这有点难以编码直接以脚本形式。因此,我的想法是将定义包含在单独的文件中,如XML文档,并简单地使用提取的数据填充上下文菜单。只有我尝试了许多不同的方法,但没有一种方法有效。是不是可以将此XML文件放在扩展文件夹中并只是访问它?如果是这样,代码调用它会是什么样子?我是否可以在Chrome扩展程序中与此类本地资源进行互动?欢迎任何意见。
示例:
// This is the parent "general" section
var general = chrome.contextMenus.create({ "title": "General" });
// Here, there would be a loop iterating through the "general" division of the XML,
// creating the sub-menus (general_item1, general_item2, etc).
答案 0 :(得分:0)
您可以通过XMLHttpRequest加载它并使用jquery解析它,例如:
$.ajax({
url: "include.xml",
dataType: "xml",
success: function(xml) {
$(xml).find("entry").each(function(){
//loop through children
$(this).children("subentry").each(function(){
console.log($(this).attr("param"));
});
});
}
});
但是我会选择Jim Schubert在评论中建议的内容 - 只包含js文件,其中包含可以使用的某种对象中的所有设置。如果您可以将所有内容存储为javascript对象,则无需将XML转换为javascript。