o87110 发表于 2023-4-28 10:58:09

油猴脚本兼容性问题

本帖最后由 o87110 于 2023-4-28 11:23 编辑

> 本帖最后由 o87110 于 2023-4-28 11:22 编辑

> 本帖最后由 o87110 于 2023-4-28 11:19 编辑

> 本帖最后由 o87110 于 2023-4-28 11:18 编辑

> 本帖最后由 o87110 于 2023-4-28 11:17 编辑

大佬们开发脚本有哪些兼容性问题?开发的插件不同浏览器不同的设备有的生效有的不生效,或者安卓可以,苹果safari不行,你们是怎么处理的


比如我最近开发了一个论坛的油猴脚本:[妖火网插件](https://greasyfork.org/zh-CN/scripts/464198-%E6%8B%93%E5%B1%95%E5%A2%9E%E5%BC%BA-%E5%A6%96%E7%81%AB%E7%BD%91%E6%8F%92%E4%BB%B6/code),用了一些油猴的增强api,然后自己测试的时候pc端谷歌,火狐都是没问题,移动端火狐和via也都正常,没有ios就没法测试ios设备

收到一下反馈:
iOS用Safari浏览器扩展用stay无法打开 设置界面,用userscripts无效
Safari浏览器加拦截100插件不支持
IOS alook浏览器不支持等等

上面这些不兼容是因为油猴api的原因不支持吗?还是说注释头部那些那些浏览器无法解析处理不了?我感觉js代码都是很正常的应该不存在什么兼容性问题

王一之 发表于 2023-4-28 11:03:23

这个得看是具体什么原因导致的了,然后就是问题严不严重,影不影响业务

如果影响业务,那就换一套兼容的方式重新实现

如果无法兼容,那就考虑业务调整

反正做工程就那么几种方向,无非就是成本考量

o87110 发表于 2023-4-28 11:18:41

王一之 发表于 2023-4-28 11:03
这个得看是具体什么原因导致的了,然后就是问题严不严重,影不影响业务

如果影响业务,那就换一套兼容的方 ...

重新编辑了贴子内容,大佬能看出啥问题吗

李恒道 发表于 2023-4-28 11:22:36

我没记错的话苹果的那些插件很多都是不兼容api甚至完全不兼容的...
而且不同浏览器+版本对js代码的执行都是不一样的
推荐就是直接放弃掉移动端...

王一之 发表于 2023-4-28 11:27:06

o87110 发表于 2023-4-28 11:18
重新编辑了贴子内容,大佬能看出啥问题吗

首先。。。。@match就写得不太规范。。

match规范一下再试试

另外不清楚具体的问题是什么,也不好判断

其次,不发我们站,我不是很赞同{:4_115:}

o87110 发表于 2023-4-28 11:28:16

李恒道 发表于 2023-4-28 11:22
我没记错的话苹果的那些插件很多都是不兼容api甚至完全不兼容的...
而且不同浏览器+版本对js代码的执行都是 ...

也就是如果考虑ios那些很多GM_函数就尽量不用,应该就支持了?头部注释那些应该没啥影响吧,像GM_getValue这种就尽量用本地存储,GM_addStyle用不了就直接用其他的方式添加样式

o87110 发表于 2023-4-28 11:32:23

王一之 发表于 2023-4-28 11:27
首先。。。。@match就写得不太规范。。

match规范一下再试试

那个我试了,是想匹配前面的通配符,包括www域名,和不要www域名,http和https都要匹配。但是有的浏览器*yaohuo.me/*直接就能解析了匹配全部,像谷歌却匹配不到www.yaohuo.me这种。所以写了2个针对不同的浏览器都能生效,按照这个需求规范的话应该怎么写?

王一之 发表于 2023-4-28 11:34:57

o87110 发表于 2023-4-28 11:32
那个我试了,是想匹配前面的通配符,包括www域名,和不要www域名,http和https都要匹配。但是有的浏览器*y ...
https://docs.scriptcat.org/docs/dev/meta/#match

参考这个去写

我觉得支持不规范是放纵。。。。

李恒道 发表于 2023-4-28 11:43:02

o87110 发表于 2023-4-28 11:28
也就是如果考虑ios那些很多GM_函数就尽量不用,应该就支持了?头部注释那些应该没啥影响吧,像GM_getValu ...

但是,理论gm-xhr是最基础需要使用的
如果真的要泛用性
基本就是一个纯js脚本了

o87110 发表于 2023-4-28 12:32:14

王一之 发表于 2023-4-28 11:34
https://docs.scriptcat.org/docs/dev/meta/#match

参考这个去写


// @match      http*://*.yaohuo.me/*
这么写吗?里面的 *.yaohuo.me 也会同时匹配到www.yaohuo.me 和yaohuo.me?
页: [1] 2
查看完整版本: 油猴脚本兼容性问题