javascript [userscript] [tabelog]通过发送链接将当前商店添加到Google日历(需要修复开始/结束日期)
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了javascript [userscript] [tabelog]通过发送链接将当前商店添加到Google日历(需要修复开始/结束日期)相关的知识,希望对你有一定的参考价值。
// ==UserScript==
// @name [tabelog] Add to Google Calendar
// @namespace https://gist.github.com/tkrkt
// @description Add current shop to Google Calendar from send link (need to fix start/end date)
// @version 1
// @match https://tabelog.com/*
// @grant none
// ==/UserScript==
const descArea = document.querySelector('.js-rst-info.infosend__textarea');
const container = document.querySelector('#js-send-button ul.infosend__btn-wrap');
if (descArea && container) {
const style = document.createElement('style');
style.textContent = `
.infosend__btn {
width: 33%;
}
`;
document.head.appendChild(style);
const desc = descArea.value;
const title = desc.split('\n')[0];
const location = desc.split('\n')[2];
const current = new Date();
const hour = 1000 * 60 * 60;
const dates = [
new Date(Math.ceil(new Date() / hour) * hour),
new Date((Math.ceil(new Date() / hour) + 2) * hour)
].map(date => {
return date.toISOString().replace(/[-:]/g, '').replace(/\.\d+Z/, '');
}).join('/');
const template = {
text: title,
details: desc,
location,
dates
};
const baseUrl = 'https://www.google.com/calendar/render?action=TEMPLATE';
const query = Object.entries(template).map(([key, value]) => {
return key + '=' + encodeURIComponent(value);
}).join('&');
const url = `https://www.google.com/calendar/render?action=TEMPLATE&${query}`;
const li = document.createElement('li');
li.classList.add('infosend__btn');
li.innerHTML = `<p><a class="js-send-sc c-btn" href="${url}">GoogleCal</a></p>`;
container.appendChild(li);
}
以上是关于javascript [userscript] [tabelog]通过发送链接将当前商店添加到Google日历(需要修复开始/结束日期)的主要内容,如果未能解决你的问题,请参考以下文章
javascript [userscript] [QiitaDeck]格雷访问了链接
JavaScript 将图像嵌入为代码(对于UserScripts)
javascript [userscript] [Google]修复Google搜索标签的顺序
javascript [userscript] [tabelog]通过发送链接将当前商店添加到Google日历(需要修复开始/结束日期)
向 webview 添加 userScript
在 tampermonkey(userscript) 中包含所有页面