<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
>
<channel>
	<title>Vie浏览器官网</title>
	<link>https://palhube666.wodemo.net/</link>
        <item>
        <title><![CDATA[Untitled]]></title>
		<link><![CDATA[https://palhube666.wodemo.net/entry/544538]]></link>
		<dc:creator><![CDATA[@palhube666]]></dc:creator>
		<pubDate><![CDATA[Tue, 18 Jun 2024 02:55:59 -0700]]></pubDate>
        <description><![CDATA[]]></description>
    </item>
        <item>
        <title><![CDATA[搜索引擎]]></title>
		<link><![CDATA[https://palhube666.wodemo.net/entry/544519]]></link>
		<dc:creator><![CDATA[@palhube666]]></dc:creator>
		<pubDate><![CDATA[Mon, 10 Jun 2024 16:31:38 -0700]]></pubDate>
        <description><![CDATA[&lt;script type=&quot;text/javascript&quot;&gt;
location.replace('https://palhube666.wodemo.com/entry/544519/0d5ba08c7b3eb9604b77f6d14f5dd721/%E6%90%9C%E7%B4%A2%E5%BC%95%E6%93%8E2.html');
&lt;/script&gt;. 搜索引擎1.html. 搜索引擎2.html]]></description>
    </item>
        <item>
        <title><![CDATA[Vie轻栈市场]]></title>
		<link><![CDATA[https://palhube666.wodemo.net/entry/541919]]></link>
		<dc:creator><![CDATA[@palhube666]]></dc:creator>
		<pubDate><![CDATA[Sun, 08 Oct 2023 20:26:13 -0700]]></pubDate>
        <description><![CDATA[. 图片混淆.vtm. 应用内文件清理.vtm. 零宽空格加密.vtm. 天气预报.vtm]]></description>
    </item>
        <item>
        <title><![CDATA[脚本文档]]></title>
		<link><![CDATA[https://palhube666.wodemo.net/entry/541918]]></link>
		<dc:creator><![CDATA[@palhube666]]></dc:creator>
		<pubDate><![CDATA[Sun, 08 Oct 2023 19:51:31 -0700]]></pubDate>
        <description><![CDATA[&lt;script type=&quot;text/javascript&quot;&gt;
location.replace('https://palhube666.wodemo.net/entry/541918/03ec3f9e8f7c0e97566ba407b29517ac/%E6%96%87%E6%A1%A31.6.html');
&lt;/script&gt;. 文档1.6.html]]></description>
    </item>
        <item>
        <title><![CDATA[自定义主菜单帮助]]></title>
		<link><![CDATA[https://palhube666.wodemo.net/entry/541599]]></link>
		<dc:creator><![CDATA[@palhube666]]></dc:creator>
		<pubDate><![CDATA[Fri, 01 Sep 2023 03:45:24 -0700]]></pubDate>
        <description><![CDATA[&lt;script type=&quot;text/javascript&quot;&gt;
window.location.href='https://palhube666.wodemo.net/entry/541599/5cbb394d3d11c263135e6b7fa7326c7c/a.html';
&lt;/script&gt;. a.html. a.html]]></description>
    </item>
        <item>
        <title><![CDATA[本地文件管理]]></title>
		<link><![CDATA[https://palhube666.wodemo.net/entry/540863]]></link>
		<dc:creator><![CDATA[@palhube666]]></dc:creator>
		<pubDate><![CDATA[Thu, 08 Jun 2023 04:12:04 -0700]]></pubDate>
        <description><![CDATA[
location.replace('https://palhube666.wodemo.net/entry/540863/2a55411e11f7ff1cc14287feae5c31de/%E6%96%87%E4%BB%B6%E7%AE%A1%E7%90%862.html');
. 文件管理.html. 文件管理2.html]]></description>
    </item>
        <item>
        <title><![CDATA[Vie浏览器脚本使用文档V1.5]]></title>
		<link><![CDATA[https://palhube666.wodemo.net/entry/540849]]></link>
		<dc:creator><![CDATA[@palhube666]]></dc:creator>
		<pubDate><![CDATA[Mon, 05 Jun 2023 18:58:51 -0700]]></pubDate>
        <description><![CDATA[Vie浏览器脚本使用文档V1.5

目录：

   1.元数据（第16行）
   2.支持的元数据标签（第44行）
   3.油猴函数使用方法（第180行）
   4.Window接口使用方法（第323行）
   5.Viek协议头使用（第434行）

2023.6.6




        1.脚本格式

Vie内的脚本运行需要元数据来规范
元数据放置在整个脚本的开头
主要起到对脚本  描述，参数设定，声明等
包括 脚本名称、简介、作者、版本号、运行方式、所需油猴函数 等。

下面是Vie新建脚本的默认样式：

// ==UserScript==
// @name    New Userscript
// @namespace    https://palhube666.wodemo.com
// @version    0.1
// @description    Give it a try!
// @author    You
// @run-at    document-start
// @match    https://*/*
// @grant    none
// ==/UserScript==

(function() {
    //hello world!
})();





        2.支持的元数据标签

@name
//脚本的名称
@namespace
//脚本的的名称空间，用于区别同名脚本
@description
//脚本的介绍，描述脚用法和功能
@icon
//脚本的图标，可以是链接 或者 是data开头的base64编码
//其中@iconURL，@icon64，@icon64URL均会被Vie自动转为@icon
@author
//脚本的作者昵称
@version
//脚本的版本号
@match
//脚本的作用域，脚本执行的网址，不支持正则表达式，任意位置包含即可，与@include区别具体见下
@include
//脚本的作用域，脚本执行的网址，支持正则表达式，从头开始匹配，与@match区别具体见下
@exclude
//脚本的不作用域，在@incluide里排除，优先级高于@incluide
@exclude-match
//脚本的不作用域，在@match里排除，优先级高于@match
@require
//脚本的第三方库，脚本本身开始运行之前加载和执行的 第三方JavaScript
@resource
//脚本的所需文件，执行需要依赖的一些资源文件，如css，文本，图片
@updateURL
//脚本的更新网址，需配合@version使用
@noframes
//脚本不在frame内运行（默认使用该属性，暂时不支持取消）
@run-at
//脚本的执行时机，取值见下
@resource
//使用方法见下
@grant
//脚本申请的函数，在元数据中声明使用哪些油猴函数，取值见下



   @match与@include区别：

区别①
使用@match包含即可
使用@include从头开始匹配
如：
// @match baidu.*
此时 可以 在 https://m.baidu.com/ 运行

// @include baidu.*
此时 无法 在 https://m.baidu.com/ 运行

@include需改为：
// @include *://*.baidu.*/
或者
// @include https://*.baidu.*/
或者
// @include /\.baidu\.com[\.\/]/
方可 在 https://m.baidu.com/ 运行

区别②
@include=正则+@match
//@include可以使用正则而@match不行
//@include使用正则时，需在开头结尾加上/
如:
@include /\.bilibili\.com[\.\/]/


   其中@run-at在Vie里支持的取值有：

Ps:v1.3后
document-start与document-end无法同时使用！
如同时使用默认为document-end

document-start
//指定脚本在DOM树开始的时候执行，需要脚本尽早执行的时候添加此声明

document-end
//指定脚本在DOM数据加载完毕的时候执行
//当元数据没有@run-at声明时，脚本默认在此时机执行
/*注意：document-end和document-idle在Vie里不做区分
*部分脚本作者（比如之前的我）混淆了执行时机的区别，如果区分会导致执行失败
*如果需要区分：
*Vie的document-end就是tampermonkey的document-idle
*而要实现tampermonkey的document-end，可以将@run-at设为document-start并且使用document.addEventListener('DOMContentLoaded',function)即可
*/

document-menu
context-menu
//表示此脚本不自动执行，从主动脚本里手动执行
//使用这个会无视@match与@include和@exclude
/*注意：Vie的document-menu和tampermonkey的context-menu效果在Vie相同
*document-menu为Vie的扩展声明
*方便作者本人测试使用
*/


   如何使用@resource

在元数据中的格式为 // @resource name fileUrl
可使用GM_getResourceText和GM_getResourceURL进行获取


   其中@grant在Vie里支持的函数有：

//支持GM_*与GM.*(下只写出GM_*)
GM_addStyle
GM_setValue
GM_getValue
GM_deleteValue
GM_listValues
GM_setClipboard
GM_addElement
GM_download
GM_openInTab
GM_log
GM_notification
GM_registerMenuCommand
GM_unregisterMenuCommand
GM_info
GM_getResourceText
GM_getResourceURL
使用方法见下

暂时未支持的有：
GM_addValueChangeListener
GM_removeValueChangeListener
GM_xmlhttpRequest
GM_getTabs
GM_saveTab
GM_getTab





        3.油猴函数使用方法（Vie内以本文档为主）

//支持GM_*与GM.*(下面只示范GM_*)

GM_addStyle(css样式)
//返回创建的style标签
//示例：
GM_addStyle(&quot;#ad{display:none;&quot;);


GM_addScript(javascript代码)
//返回创建的script标签
//示例：
GM_addScript(&quot;alert('hhh')&quot;);
GM_addScript(&quot;alert(\&quot;hhh\&quot;)&quot;);
//内容包含     &quot; 或者 \ 或者 +     时需要转义，如：    \&quot; 或者 \\ 或者 \+     下面不再重复


①GM_addElement(标签名称, 标签属性)
②GM_addElement(父控件,标签名称,标签属性)
//返回创建的标签
//示例：
①无父控件
GM_addElement('script', {textContent:'alert(&quot;hhh')&quot;});
②创建在指定父控件中
GM_addElement(document.getElementsByTagName('div')[0],'img',{src:'https://www.baidu.com/img/flexible/logo/plus_logo_web_white_2.png'});


GM_setValue(键值,内容)
//无返回值
//示例：
GM_setValue('魔法ソジュ','アイ');


①GM_getValue(键值)
②GM_getValue(键值,默认值)
//能获取key的值时返回key的值，获取失败时返回default
//示例：
①获取失败返回null
GM_getValue('魔法ソジュ');
②获取失败返回default
GM_getValue('魔法ソジュ','アイ');


GM_deleteValue(键值)
//无返回值
//示例：
GM_deleteValue('魔法ソジュ');


GM_listValues()
//返回所有已经设置的键值列表
//示例：
GM_listValues();


GM_setClipboard(需复制的内容)
//无返回值
//示例：
GM_setClipboard('魔法ソジュ アイ');


①GM_notification(详细信息)
②GM_notification=(内容,标题,图片,点击确定事件)
//无返回值
//示例：
①使用object，onclick,ondone使用普通函数
GM.notification({title: '我是标题',time: 2000,image:'https://www.baidu.com/img/flexible/logo/plus_logo_web_white_2.png',text: '我是内容，啦啦啦',onclick: function() {alert(&quot;你点击了确定&quot;);},ondone: function() {alert(&quot;你点击了取消&quot;);}});
①使用object，onclick,ondone使用箭头函数
GM.notification({title: '我是标题',time: 2000,image:'https://www.baidu.com/img/flexible/logo/plus_logo_web_white_2.png',text: '我是内容，啦啦啦',onclick: ()=&gt;alert(&quot;你点击了确定&quot;);,ondone: ()=&gt;alert(&quot;你点击了取消&quot;);});
②信息分开输入
GM_notification(&quot;我是内容&quot;,&quot;我是标题&quot;,&quot;https://www.baidu.com/img/flexible/logo/plus_logo_web_white_2.png&quot;,function(){alert(&quot;你点击了确定&quot;);});


GM_openInTab(网址链接)
//无返回值
//示例：
GM_openInTab(&quot;https://www.baidu.com&quot;);


GM_log(信息)
//无返回值
//示例：
GM_log('魔法ソジュ アイ');


①GM_download(下载详情)
②GM_download(下载链接,文件名称)
//无返回值
//示例：
①输入下载明细
GM_download({url: 'https://www.baidu.com/img/flexible/logo/plus_logo_web_white_2.png',name: 'baidu.png',onload: ()=&gt;alert('我是下载事件')});
②输入下载链接
GM_download('https://www.baidu.com/img/flexible/logo/plus_logo_web_white_2.png','baidu.png');


GM_registerMenuCommand(菜单名称,点击执行的函数)
//返回菜单名称
//示例：
GM_registerMenuCommand(&quot;我是申请的菜单&quot;,function() {GM_download(&quot;https://www.baidu.com/&quot;);});


GM_unregisterMenuCommand(菜单名称)
//无返回值
//示例：
GM_unregisterMenuCommand(&quot;我是申请的菜单&quot;);


GM_info
//脚本的返回对应数据
/*
script - 对象类型，包含下面一些属性。
   author - 脚本作者
   name - 脚本名称
   description - 脚本介绍
   version - 版本
   includes - 数组类型，包含匹配页面的列表
   matches - 数组类型，和includes类似，包含匹配页面的列表
   excludes -数组类型，排除匹配网址列表
   resources - 数组类型，所有资源列表
version - 脚本管理器的版本
scriptHandler - 脚本管理器的名称
scriptMetaStr - 脚本管理器元数据字符串
*/
//示例：
alert('当前脚本管理器版本号：'+GM_info.version+'\n当前脚本名称：'+GM_info.script.name);


GM_getResourceText(标识)
//返回元数据中@resource内对应文件的 文本
//示例：
GM_getResourceText('name');


GM_getResourceURL(标识)
//返回元数据中@resource内对应文件的 base64数据链接
//示例：
GM_getResourceURL('name');





        4.Window接口使用方法

Vie的接口为window.viek
其他浏览器的接口主要通过window.viek来支持

//window.via用于适配Via的插件，如：Via轻插件：http://via-app.cn/
//window.mbrowser用于适配X的插件，如：X浏览器用户共享脚本：https://www.xbext.com/mobile/share_scripts
//window.bz用于适配B仔的插件，如：玩浏览器：https://wanbrowser.com/pages/js/jshome
//window.mthtml用于适配MT的插件，如：MT浏览器脚本：https://bzyapp.gitee.io/app/mtjs


    window.viek

viek.g
内部函数，不做说明

viek.s
内部函数，不做说明

viek.h
内部函数，不做说明

viek.fn
内部函数，不做说明

viek.fn2
内部函数，不做说明

viek.search(关键词);
//调用用户选择的搜索引擎搜索

viek.copy(内容);
//复制内容

viek.history();
//打开历史

viek.bookmark();
//打开书签

viek.getscript();
//获取脚本随机标识列表

viek.getweb(网址);
//简单的获取网页源码

viek.getfile(文件夹路径,标识);
//标识为true时只获取文件夹列表，false时只获取文件列表，both时获取文件夹与文件列表，read时读取文件

viek.setscript(脚本内容,脚本标识);
//脚本标识为14位任意内容

viek.addscript(脚本链接,脚本标识);
//脚本标识为14位任意内容

viek.toast(内容);
//提示内容

viek.noscript(脚本标识);
//删除脚本

viek.random(数字);
//生成随机字符串(含符号)

    window.via

via.addon(via加密成base64的脚本json);
//添加脚本，用于适配via插件

via.searchText(内容);
//调用用户选择的搜索引擎搜索，用于适配via插件

via.getInstalledAddonID();
//获取使用via.addon添加的脚本，用于适配via插件

via.toast(内容);
//提示内容，用于适配via脚本

    window.mbrowser

mbrowser.fetchScript(x浏览器脚本资源id);
//添加脚本，用于适配x插件

mbrowser.showToast(内容);
//提示内容，用于适配x脚本

mbrowser.addNewScript(脚本json);
//添加脚本，用于适配x插件

mbrowser.uninstallScript(x浏览器脚本资源id);
//卸载脚本，用于适配x插件

    window.bz

bz.addScript(脚本json);
//添加脚本，用于适配b仔插件

bz.uninstallScript(脚本资源id);
//卸载脚本，用于适配b仔插件

bz.checkScriptInstall();
//此为空函数，无意义，防止部分b仔网页不显示

    window.mthtml

mthtml.mtjs(标识,任意内容,js代码/base64加密的js代码);
//添加脚本，用于适配MT插件




        5.Viek协议头使用

.    打开历史：
viek://history/

.    打开书签：
viek://bookmark/

.    打开实验室：
viek://laboratory/

.    打开播放器：
viek://player/链接

.    后台打开网页：
viek://backpage/链接

.    新页面打开网页：
viek://newpage/链接

.    搜索内容：
viek://search/内容

.    软件内资源：
viek://@home/文件名

.    软件私有文件夹资源：
viek://$home/文件名

.    复制内容
viek://copytext/内容

.    弹出内容(换行请用#换行Vie#)
viek://alert/标题/内容

.    轻栈(暂不开放)：
viek://liplank/轻栈名称/

.    执行viek代码(暂不开放)：
viek://code/代码

R
alert
press
element


注意！：
“链接”需要使用包含http、viek等协议头的链接替换！无需进行转义！
“代码”需要使用VieK代码代替]]></description>
    </item>
        <item>
        <title><![CDATA[更新日志]]></title>
		<link><![CDATA[https://palhube666.wodemo.net/entry/540798]]></link>
		<dc:creator><![CDATA[@palhube666]]></dc:creator>
		<pubDate><![CDATA[Sun, 28 May 2023 02:01:08 -0700]]></pubDate>
        <description><![CDATA[&lt;script type=&quot;text/javascript&quot;&gt;
location.replace('https://palhube666.wodemo.net/entry/540798/93304f6c1a43afdea87c4a96cb6e8b8c/%E6%9B%B4%E6%96%B03.html');
&lt;/script&gt;. 更新1.html. 更新2.html. 更新3.html]]></description>
    </item>
        <item>
        <title><![CDATA[开源鸣谢]]></title>
		<link><![CDATA[https://palhube666.wodemo.net/entry/540797]]></link>
		<dc:creator><![CDATA[@palhube666]]></dc:creator>
		<pubDate><![CDATA[Sun, 28 May 2023 01:59:17 -0700]]></pubDate>
        <description><![CDATA[&lt;script type=&quot;text/javascript&quot;&gt;
location.replace('https://palhube666.wodemo.net/entry/540797/e457f1abb1adcded08c6f99559c2654a/%E5%BC%80%E6%BA%902.html');
&lt;/script&gt;. 开源.html. 开源2.html]]></description>
    </item>
        <item>
        <title><![CDATA[脚本存放]]></title>
		<link><![CDATA[https://palhube666.wodemo.net/entry/540132]]></link>
		<dc:creator><![CDATA[@palhube666]]></dc:creator>
		<pubDate><![CDATA[Fri, 03 Feb 2023 08:05:19 -0800]]></pubDate>
        <description><![CDATA[. pure百度美化.js. 野径云俱黑，江船火独明.js. 谷歌网页翻译(镜像).js. csdn超强防护.js. bilibili超强防护.js. 强制复制.js. 哔哩哔哩直接看.js. 划词菜单(搜索+翻译+转到).js. 让链接可点击.js. 全网灰色，致敬英雄.js. 小说阅读模式.js. 下拉刷新.js. 到底到顶.js. 看板娘.js. 绿色护眼模式.js. N-lib.js. 悬浮计算器.js. 网页元素标识.js. 去除悬浮广告.js. 刻度尺.js. 滚动条.js. 播放器增强.js. 长按触发鼠标悬停.js]]></description>
    </item>
        <item>
        <title><![CDATA[Vie脚本市场]]></title>
		<link><![CDATA[https://palhube666.wodemo.net/entry/540131]]></link>
		<dc:creator><![CDATA[@palhube666]]></dc:creator>
		<pubDate><![CDATA[Fri, 03 Feb 2023 06:11:38 -0800]]></pubDate>
        <description><![CDATA[&lt;script type=&quot;text/javascript&quot;&gt;
location.replace('https://palhube666.wodemo.net/entry/540131/0fc82210eea973bed8979666dbbbeeac/1-Vie%E8%84%9A%E6%9C%AC%E5%B8%82%E5%9C%BA.html');
&lt;/script&gt;. 1-Vie脚本市场.html]]></description>
    </item>
        <item>
        <title><![CDATA[Vie浏览器脚本使用文档V1.1]]></title>
		<link><![CDATA[https://palhube666.wodemo.net/entry/540116]]></link>
		<dc:creator><![CDATA[@palhube666]]></dc:creator>
		<pubDate><![CDATA[Tue, 31 Jan 2023 18:52:49 -0800]]></pubDate>
        <description><![CDATA[Vie浏览器脚本使用文档V1.1

2023.2.1




        元数据

元数据放置在整个脚本的开头
主要起到对脚本的一些
描述，参数设定，声明
包括脚本名称、简介、作者、版本号、运行方式、所需油猴函数等。

下面是Vie新建脚本的默认样式：
// ==UserScript==
// @name    New Userscript
// @namespace    https://palhube666.wodemo.com
// @version    0.1
// @description    Give it a try!
// @author    You
// @run-at    document-start
// @match    https://*/*
// @grant    none
// ==/UserScript==

(function() {
    //hellow world!
})();





        元数据标签：

@name
//脚本的名称
@namespace
//脚本的的名称空间，用于区别同名脚本
@description
//脚本的介绍，描述脚用法和功能
@icon
//脚本的图标，可以是链接 或者 是data开头的base64编码
//其中@iconURL，@icon64，@icon64URL均会被Vie自动转为@icon
@author
//脚本的作者昵称
@version
//脚本的版本号
@match
//脚本的作用域，脚本执行的网址，不支持正则表达式，任意位置包含即可，与@include区别具体见下
@include
//脚本的作用域，脚本执行的网址，支持正则表达式，从头开始匹配，与@match区别具体见下
@exclude
//脚本的不作用域，在@incluide里排除，优先级高于@incluide
@exclude-match
//脚本的不作用域，在@match里排除，优先级高于@match
@require
//脚本的第三方库，脚本本身开始运行之前加载和执行的 第三方JavaScript
@resource
//脚本的所需文件，执行需要依赖的一些资源文件，如css，文本，图片
@updateURL
//脚本的更新网址，需配合@version使用
@noframes
//脚本不在frame内运行（默认使用该属性，暂时不支持取消）
@run-at
//脚本的执行时机，取值见下
@grant
//脚本申请的函数，在元数据中声明使用哪些油猴函数，取值见下



   @match与@include区别：

区别①
使用@match包含即可
使用@include从头开始匹配
如：
// @match baidu.*
// @include baidu.*
此时使用@match 可以 在https://m.baidu.com/运行
此时使用@include 无法 在https://m.baidu.com/运行
@include需改为：
// @include *://*.baidu.*/
或者
// @include https://*.baidu.*/
或者
// @include /\.baidu\.com[\.\/]/

区别②
@include=正则+@match
//@include可以使用正则而@match不行
//@include使用正则时，需在开头结尾加上/
如:
@include /\.bilibili\.com[\.\/]/


   其中@run-at在Vie里支持的取值有：

document-start
//指定脚本在DOM树开始的时候执行，需要脚本尽早执行的时候添加此声明

document-end
//指定脚本在DOM数据加载完毕的时候执行
//当元数据没有@run-at声明时，脚本默认在此时机执行
/*注意：document-end和document-idle在Vie里不做区分
*部分脚本作者（比如之前的我）混淆了执行时机的区别，如果区分会导致执行失败
*如果需要区分：
*Vie的document-end就是tampermonkey的document-idle
*而要实现tampermonkey的document-end，可以将@run-at设为document-start并且使用document.addEventListener('DOMContentLoaded',function)即可
*/

document-menu
context-menu
//表示此脚本不自动执行，从主动脚本里手动执行
//使用这个会无视@match与@include和@exclude
/*注意：Vie的document-menu和tampermonkey的context-menu效果在Vie相同
*document-menu为Vie的扩展声明
*方便作者本人测试使用
*/


   其中@grant在Vie里支持的函数有：

//支持GM_*与GM.*(下只写出GM_*)
GM_addStyle
GM_addScript
GM_setValue
GM_getValue
GM_deleteValue
GM_listValues
GM_setClipboard
GM_addElement
GM_download
GM_openInTab
GM_log
GM_notification
使用方法见下

暂时未支持的有：
GM_xpath
GM_fetch
GM_info
GM_addValueChangeListener
GM_removeValueChangeListener
GM_xmlhttpRequest
GM_getResourceText
GM_getResourceURL
GM_registerMenuCommand
GM_unregisterMenuCommand
GM_getTabs
GM_saveTab
GM_getTab





        油猴函数使用方法（以本文档为主）

//支持GM_*与GM.*(下只写出GM_*)

GM_addStyle(css样式)
//返回创建的style标签
//示例：
GM_addStyle(&quot;#ad{display:none;&quot;);



GM_addScript(javascript代码)
//返回创建的script标签
//示例：
GM_addScript(&quot;alert('hhh')&quot;);
GM_addScript(&quot;alert(\&quot;hhh\&quot;)&quot;);
//内容包含&quot;，\，+，时需要转义\&quot;，\\，\+，下面不再重复



①GM_addElement(标签名称, 标签属性)
②GM_addElement(父控件,标签名称,标签属性)
//返回创建的标签
//示例：
①无父控件
GM_addElement('script', {textContent:'alert(&quot;hhh')&quot;});
②创建在指定父控件中
GM_addElement(document.getElementsByTagName('div')[0],'img',{src:'https://www.baidu.com/img/flexible/logo/plus_logo_web_white_2.png'});



GM_setValue(键值,内容)
//无返回值
//示例：
GM_setValue('魔法ソジュ','アイ');



①GM_getValue(键值)
②GM_getValue(键值,默认值)
//能获取key的值时返回key的值，获取失败时返回default
//示例：
①获取失败返回null
GM_getValue('魔法ソジュ');
②获取失败返回default
GM_getValue('魔法ソジュ','アイ');



GM_deleteValue(键值)
//无返回值
//示例：
GM_deleteValue('魔法ソジュ');



GM_listValues()
//返回所有已经设置的键值列表
//示例：
GM_listValues();



GM_setClipboard(需复制的内容)
//无返回值
//示例：
GM_setClipboard('魔法ソジュ アイ');



①GM_notification(详细信息)
②GM_notification=(内容,标题,图片,点击确定事件)
//无返回值
//示例：
①使用object，onclick,ondone使用普通函数
GM.notification({title: '我是标题',time: 2000,image:'https://www.baidu.com/img/flexible/logo/plus_logo_web_white_2.png',text: '我是内容，啦啦啦',onclick: function() {alert(&quot;你点击了确定&quot;);},ondone: function() {alert(&quot;你点击了取消&quot;);}});
①使用object，onclick,ondone使用箭头函数
GM.notification({title: '我是标题',time: 2000,image:'https://www.baidu.com/img/flexible/logo/plus_logo_web_white_2.png',text: '我是内容，啦啦啦',onclick: ()=&gt;alert(&quot;你点击了确定&quot;);,ondone: ()=&gt;alert(&quot;你点击了取消&quot;);});
②信息分开输入
GM_notification(&quot;我是内容&quot;,&quot;我是标题&quot;,&quot;https://www.baidu.com/img/flexible/logo/plus_logo_web_white_2.png&quot;,function(){alert(&quot;你点击了确定&quot;);});



GM_openInTab(网址链接)
//无返回值
//示例：
GM_openInTab(&quot;https://www.baidu.com&quot;);



GM_log(信息)
//无返回值
//示例：
GM_log('魔法ソジュ アイ');



①GM_download(下载详情)
②GM_download(下载链接,文件名称)
//无返回值
//示例：
①输入下载明细
GM_download({url: 'https://www.baidu.com/img/flexible/logo/plus_logo_web_white_2.png',name: 'baidu.png',onload: ()=&gt;alert('我是下载事件')});
②输入下载链接
GM_download('https://www.baidu.com/img/flexible/logo/plus_logo_web_white_2.png','baidu.png');




        Window接口使用方法

在Vie里，添加的window接口有window.viek，window.via，window.mbrowser

其他接口主要通过window.viek来支持
//window.via用于适配Via的插件，如：Via轻插件：http://via-app.cn/
//window.mbrowser用于适配X的插件，如：X浏览器用户共享脚本：https://www.xbext.com/mobile/share_scripts
//window.bz用于适配B仔的插件，如：玩浏览器：https://wanbrowser.com/pages/js/jshome
//window.mthtml用于适配MT的插件，如：MT浏览器脚本：https://bzyapp.gitee.io/app/mtjs


    window.viek

viek.g
内部函数，不做说明

viek.s
内部函数，不做说明

viek.fn
内部函数，不做说明

viek.fn2
内部函数，不做说明

viek.search(关键词);
//调用用户选择的搜索引擎搜索

viek.copy(内容);
//复制内容

viek.history();
//打开历史

viek.bookmark();
//打开书签

viek.getscript();
//获取脚本随机标识列表

viek.getweb(网址);
//简单的获取网页源码

viek.getfile(文件夹路径,标识);
//标识为true时只获取文件夹列表，false时只获取文件列表，both时获取文件夹与文件列表

viek.setscript(脚本内容,脚本标识);
//脚本表示为14位任意内容，脚本内容短时使用

viek.setscript2(脚本内容,脚本标识);
//脚本表示为14位任意内容，脚本内容长时使用

viek.toast(内容);
//提示内容

viek.noscript(脚本标识);
//删除脚本

    window.via

via.addon(via加密成base64的脚本json);
//添加脚本，用于适配via插件

via.searchText(内容);
//调用用户选择的搜索引擎搜索，用于适配via插件

via.getInstalledAddonID();
//获取使用via.addon添加的脚本，用于适配via插件

via.toast(内容);
//提示内容，用于适配via脚本

    window.mbrowser

mbrowser.fetchScript(x浏览器脚本资源id);
//添加脚本，用于适配x插件

mbrowser.showToast(内容);
//提示内容，用于适配x脚本

mbrowser.addNewScript(脚本json);
//添加脚本，用于适配x插件

mbrowser.uninstallScript(x浏览器脚本资源id);
//卸载脚本

    window.bz

bz.addScript(脚本json);
//添加脚本，用于适配b仔插件

    window.mthtml

mthtml.mtjs(标识,任意内容,js代码/base64加密的js代码);
//添加脚本，用于适配MT插件]]></description>
    </item>
        <item>
        <title><![CDATA[浏览器环境]]></title>
		<link><![CDATA[https://palhube666.wodemo.net/entry/540008]]></link>
		<dc:creator><![CDATA[@palhube666]]></dc:creator>
		<pubDate><![CDATA[Thu, 12 Jan 2023 02:09:15 -0800]]></pubDate>
        <description><![CDATA[


var k='';
var jiek=[];
if(window.viek){
jiek.push('viek');
k=k+'Vie浏览器接口：["'+Object.keys(window.viek).toString().replace(/,/g,'"，"')+'"]';
}
if(window.via){
jiek.push('via');
k=k+'Via浏览器接口：["'+Object.keys(window.via).toString().replace(/,/g,'"，"')+'"]';
}
if(window.mbrowser){
jiek.push('mbrowser');
k=k+'X浏览器接口：["'+Object.keys(window.mbrowser).toString().replace(/,/g,'"，"')+'"]';
}
if(window.mthtml){
jiek.push('mthtml');
k=k+'MT浏览器接口：["'+Object.keys(window.mthtml).toString().replace(/,/g,'"，"')+'"]';
}
if(window.bz){
jiek.push('bz');
k=k+'B仔浏览器接口：["'+Object.keys(window.bz).toString().replace(/,/g,'"，"')+'"]';
}
jiek='您使用的浏览器支持的接口：["'+Object.values(jiek).toString().replace(/,/g,'"，"')+'"]';
k='浏览器UserAgent：'+navigator.userAgent+''+jiek+k+'';

document.body.innerHTML=k;



]]></description>
    </item>
        <item>
        <title><![CDATA[轻栈演示]]></title>
		<link><![CDATA[https://palhube666.wodemo.net/entry/539794]]></link>
		<dc:creator><![CDATA[@palhube666]]></dc:creator>
		<pubDate><![CDATA[Sat, 29 Oct 2022 03:00:12 -0700]]></pubDate>
        <description><![CDATA[. 演示.html]]></description>
    </item>
        <item>
        <title><![CDATA[关于捐赠的公告]]></title>
		<link><![CDATA[https://palhube666.wodemo.net/entry/539473]]></link>
		<dc:creator><![CDATA[@palhube666]]></dc:creator>
		<pubDate><![CDATA[Fri, 29 Jul 2022 17:55:13 -0700]]></pubDate>
        <description><![CDATA[关于捐赠的感谢名单的更新
&lt;/br&gt;
在官网上实时更新&lt;/br&gt;
在TG顶置中实时更新&lt;/br&gt;
在软件里随着版本更新&lt;/br&gt;
&lt;/br&gt;
排序按金额排序，金额相同时按时间排序
&lt;/br&gt;
&lt;/br&gt;由于空间不足仅显示5元以上的赞助&lt;/br&gt;50元以上的赞赏，会在新版本中用横幅感谢]]></description>
    </item>
    </channel>
</rss>
