javascript - 我可以用 Javascript 添加日历事件吗?
问题描述
我想让用户输入他们的日期、时间、摘要...等,
并创建一个.ics
文件,然后将其放入默认日历应用程序以创建事件,
但它仅适用于 Safari,
当我在 Chrome 上执行此操作时,它会下载.ics
文件.
有可能让它在iOS和android上都运行吗?
这是我的代码:
function convertDate(date, time) {
let dateStr = date.replaceAll('/', '');
let timeStr = time.replaceAll(':', '');
console.log(dateStr + 'T' + timeStr + '00');
return dateStr + 'T' + timeStr + '00';
}
function addEvent() {
let startDate = '2021/09/07';
let startTime = '14:30';
let endDate = '2021/09/07';
let endTime = '23:00'
var icsMSG =
"BEGIN:VCALENDAR\n" +
"METHOD:PUBLISH\n" +
"PRODID:-//VMFIVE//EN\n" +
"VERSION:2.0\n" +
"BEGIN:VEVENT\n" +
"DTSTART:" + convertDate(startDate, startTime) + "\n" +
"DTEND:" + convertDate(endDate, endTime) + "\n" +
"SUMMARY:" + 'TEST EVENT' + "\n" +
"DESCRIPTION:" + 'TEST DESCRIPTION' + "\n" +
"END:VEVENT\n" +
"END:VCALENDAR";
window.open("data:text/calendar;charset=utf8," + escape(icsMSG));
}
解决方案
推荐阅读
- c# - Windows 服务因错误而停止
- c# - 无法截断表,因为它被使用 ExecuteSqlCommand 的 FOREIGN KEY 约束引用
- angular - “ng generate component”生成带有数字行的文件
- apache-spark - 如何对 Spark DataFrame 列进行类型转换?使用 pyspark
- macos - 如何在 Apple imac pro 2017 中安装 AMD rocm(进一步安装 tensorflow 进行深度学习)
- java - SOLID_FOREGROUND 无法解析或不是字段
- json - 使用 beta API 创建新会议时出现“onlinemeeting 不能为空”错误
- php - 当任何新数据保存或更新时向用户发送桌面通知:php、Drupal7
- bitbucket - 如何防止在 Bitbucket Markdown 中链接到 Jira?
- drupal - 如何在 Drupal 8 中自定义/样式/主题自定义内容类型的输出?