Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/398.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Chrome扩展-通过输入字段修改Google日历事件UI以接受扩展属性_Javascript_Google Chrome_Google Chrome Extension_Google Calendar Api - Fatal编程技术网

Javascript Chrome扩展-通过输入字段修改Google日历事件UI以接受扩展属性

Javascript Chrome扩展-通过输入字段修改Google日历事件UI以接受扩展属性,javascript,google-chrome,google-chrome-extension,google-calendar-api,Javascript,Google Chrome,Google Chrome Extension,Google Calendar Api,我希望创建一个Chrome扩展,在创建新事件时简单地添加一些功能。我想在“创建事件”视图中插入一个额外的字段,该字段将接受要存储的新元数据,即:项目名称、客户端名称等 到目前为止,我已经成功地创建了扩展,设置了一个弹出视图,通过contentscripts.js将一些新的html插入到核心日历视图中,但我无法解决以下问题: 1) 将新文本输入字段添加到事件创建视图 2) 根据Google API()将上述字段中的文本另存为“扩展属性”,以便以后检索 有没有人有任何建议或资源来完成这样的任务 这是

我希望创建一个Chrome扩展,在创建新事件时简单地添加一些功能。我想在“创建事件”视图中插入一个额外的字段,该字段将接受要存储的新元数据,即:项目名称、客户端名称等

到目前为止,我已经成功地创建了扩展,设置了一个弹出视图,通过contentscripts.js将一些新的html插入到核心日历视图中,但我无法解决以下问题:

1) 将新文本输入字段添加到事件创建视图
2) 根据Google API()将上述字段中的文本另存为“扩展属性”,以便以后检索

有没有人有任何建议或资源来完成这样的任务

这是我的Manifest.json文件:

{
“名称”:“多维色”,
“版本”:“0.1.1”,
“清单版本”:2,
“说明”:“多维色”,
“背景”:{
“坚持”:假,
“脚本”:[“background.html”]
},
“icons”:{“16”:“icon.png”,
“48”:“icon.png”,
“128”:“icon.png”
},
“浏览器操作”:{
“默认图标”:{//可选
“16”:“icon2.png”,//可选
“24”:“icon2.png”,//可选
“32”:“icon2.png”//optional
},
“默认标题”:“DoviChrome”,//可选;显示在工具提示中
“默认弹出窗口”:“popup.html”//可选
},
“权限”:[
“通知”,
“身份”,
“存储”,
“活动选项卡”
],
“内容脚本”:[
{
//更改“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”],
“运行时间”:“文件空闲”,
“所有帧”:false
}
],
“网络可访问资源”:[“img/*”、“节点模块/*”、“*.png”、”https://www.parsecdn.com/js/parse-latest.js"],

}
好的,我先假设以下几点:

  • 您所说的“事件创建视图”是指当您单击“创建”按钮时视图所更改的内容
  • 您希望将其合并到contentscript.js中
  • 如果这两个都是真的,我也许能在某种程度上帮助你。然而,由于API知识有限,我只能帮助您解决问题的前半部分

    首先,对于您的设置,我将研究使用选项页。它更干净,你只需要做很少的事情就可以改变你的清单。大多数情况下,chrome.storage API用于保存和获取设置。谷歌开发者文档中的页面是

    第二,您必须大量查看用户的HTML以更自然地扩展其代码。下面是我能想到的修改contentscript.js以扩展事件创建表单的最简单方法:

    $(文档).ready(函数(){
    log(“contentscript.js已加载”)
    日志(“注入UI…”)
    //单击按钮导航到事件视图时
    $(“div.goog-inline-block.goog imageless button.goog imageless button折叠右”)。单击(函数(){
    //如果视图已显示(可能需要添加时间延迟以使其工作)
    如果($(“div#coverinner”)是(“:可见”)){
    //在“创建事件”视图中选择适当的位置以添加自定义选项
    var target=$(“div.ep-dp-dt tbody tr#:3c.提醒行”).next().next().next()
    //添加新选项。它将添加到新选项的前面。
    目标。之后(文本输入(“测试”,1))
    //可以以类似的样式添加更多选项
    }
    }
    });
    //这只是一个文本输入生成器的例子,我基本上是通过复制粘贴在google中找到的html,然后对其进行适当的修改来实现的。
    函数文本输入(名称、行){
    变量文本=$([
    "",
    "	",
    “+name+”,
    "	",
    "	",
    "		",
    "			",
    "				",
    "				",
    "			",
    "		",
    "	",
    ""
    ].join(“\n”);
    返回文本
    
    }
    您可能想尝试使用。此功能使您能够向日历中添加几乎任何类型的内容。您可以选择使用iCalendar格式或Google calendar API v3创建日历事件小工具。您好,您完成了此扩展吗?没有。我还没有。部分,但仍在寻找上述问题的解决方案。您在吗king也这么做吗?警告:日历小工具现在已被弃用,并将在2018年1月31日后停止支持。非常感谢您抽出时间提供如此好的响应。我将在接下来的几天内尝试一下,看看效果如何。我已经有一段时间没有做这个项目了,但我想继续请尽快回复。我会让你知道我是如何理解的,并提供确认答案。再次感谢你的帮助。