我期待创建一个Chrome扩展程序,该程序只是在创建新事件时添加一些功能。我想在“创建事件”视图中插入一个额外的字段,该视图将接受要存储的新元数据,即:项目名称,客户端名称等。Chrome扩展程序 - 修改Google日历事件UI以通过输入字段接受扩展属性
到目前为止,我设法创建了扩展,设置弹出窗口视图,插入一些新的HTML到通过contentscripts.js核心日历视图,但我无法弄清楚如下:
1)新的文本输入字段添加到事件创建视图从
2)保存文本根据谷歌API(https://developers.google.com/google-apps/calendar/extended-properties)以上字段作为“扩展属性”以供日后检索
有没有人有任何意见或建议想要完成这样一项任务?
这里是我的manifest.json文件:
{
"name": "DoviChrome",
"version": "0.1.1",
"manifest_version":2,
"description": "DoviChrome",
"background": {
"persistent": false,
"scripts": ["background.html"]
},
"icons": { "16": "icon.png",
"48": "icon.png",
"128": "icon.png"
},
"browser_action": {
"default_icon": { // optional
"16": "icon2.png", // optional
"24": "icon2.png", // optional
"32": "icon2.png" // optional
},
"default_title": "DoviChrome", // optional; shown in tooltip
"default_popup": "popup.html" // optional
},
"permissions": [
"notifications",
"identity",
"storage",
"activeTab"
],
"content_scripts": [
{
// Change 'matches' attribute to load content
// script only in pages you want to.
"matches": ["*://calendar.google.com/calendar/render"],
"css": ["css/style.css"],
"js": ["js/lib/jquery-3.1.1.min.js", "js/lib/angular1.6.1.min.js", "contentscript.js"],
"run_at": "document_idle",
"all_frames": false
}
],
"web_accessible_resources": [ "img/*", "node_modules/*","*.png","https://www.parsecdn.com/js/parse-latest.js"],
}
...这是我用我contentscript.js什么插入在主日历其他一些功能视图。
$(document).ready(function() {
console.log("contentscript.js loaded")
var iconURL = chrome.extension.getURL("icon.png");
console.log("Injecting UI...")
$("#calcontent #vr-nav").before("<div class='new-menu'>" +
"<div class='my-logo inline'><img src='" + iconURL + "'/></div>" +
"<div class='quick-report'>Create Timesheet</div>" +
"<div class='quick-settings'>Settings</div>" +
"</div>"
)
$('.quick-report').on("click",function(){
\t console.log("clicked reports")
})
$('div.quick-settings').on("click",function(){
\t console.log("Clicked settings")
})
});
您可能想尝试使用[Google日历事件小工具](https://developers.google.com/google-apps/calendar/gadgets/event/)。此功能使您可以将任何类型的内容添加到日历中。您可以选择使用iCalendar格式或Google Calendar API v3来创建日历事件小工具。 – Teyam
你好,你完成了这个扩展? –
不,我还没有。部分,但仍在寻找上述解决方案。你想要做同样的事吗? –