您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Add add "Watched" button to calendar at TVMaze
当前为
- // ==UserScript==
- // @name TVMaze: add "Watched" button to calendar
- // @description Add add "Watched" button to calendar at TVMaze
- // @namespace BlackNullerNS
- // @include http://www.tvmaze.com/calendar*
- // @version 1.0
- // @grant GM_xmlhttpRequest
- // ==/UserScript==
- var btn = document.createElement('button');
- btn.innerHTML = '✓';
- btn.style.border = 0;
- btn.style.padding = '2px';
- btn.style.background = 'transparent';
- btn.style.color = '#3C948B';
- btn.style.cursor = 'pointer';
- var handler = function (e) {
- e.preventDefault();
- if (!confirm('Mark the episode as watched?')) {
- return false;
- }
- var self = this,
- entry = this.parentNode,
- link = this.previousElementSibling;
- if (link.getAttribute('href').indexOf('episodes/') === -1) {
- return false;
- }
- var eid = link.getAttribute('href').split('episodes/')[1].split('/')[0];
- var url = '/watch/set?episode_id=' + eid;
- var csrf = document.querySelector('meta[name="csrf-token"]').getAttribute('content');
- GM_xmlhttpRequest({
- method: "POST",
- url: url,
- data: "type=0",
- headers: {
- "Content-Type": "application/x-www-form-urlencoded; charset=UTF-8",
- "X-CSRF-Token": csrf
- },
- onload: function(response) {
- entry.classList.add('watched');
- self.remove();
- }
- });
- };
- var cloned;
- var episodes = document.querySelectorAll(".entry:not(.watched)");
- for (var i = 0, l = episodes.length; i < l; i++) {
- cloned = btn.cloneNode(true);
- cloned.addEventListener('click', handler);
- episodes.item(i).appendChild(cloned);
- }