您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
1
此脚本不应直接安装。它是供其他脚本使用的外部库,要使用该库请加入元指令 // @require https://update.cn-greasyfork.org/scripts/478724/1289430/Notifier.js
- 'use strict';
- if (typeof Notification !== "function") throw Error("Not Support yet!");
- const notify = (() => {
- const open = (typeof GM_openInTab === "function") ?
- GM_openInTab : (uri) => window.open(uri, "_blank");
- if (typeof GM_notification === "function") {
- const ver = GM_info.version;
- const handler = GM_info.scriptHandler;
- if (handler === "Violentmonkey" && ver >= "2.15.4") {
- const V2_15_4 = (opti) => {
- const noti = GM_notification({
- onclick: () => (open(opti.url), noti.remove()),
- ...opti
- });
- return noti;
- };
- if (ver > "2.16.1") // v 2.16.1 has some bugs
- return (opti) => {
- opti.zombieUrl = opti.url;
- opti.zombieTimeout = 2147483647;
- return V2_15_4(opti);
- };
- return V2_15_4;
- } else if (handler === "Tampermonkey" && ver >= "5.0")
- return GM_notification;
- }
- return ({text, title, image, silent, tag, url: uri, ondone}) => {
- Notification.requestPermission();
- const options = {
- body: text,
- silent, tag,
- data: uri,
- icon: image,
- };
- if (!!tag) options.renotify = true;
- const noti = new Notification(title, options);
- noti.onclick = () => (open(noti.data), noti.close());
- noti.onclose = ondone;
- return {remove: () => noti.close()};
- };
- })();