bootislands
火狐狸
火狐狸
  • UID38137
  • 注册日期2012-01-18
  • 最后登录2023-10-03
  • 发帖数136
  • 经验159枚
  • 威望0点
  • 贡献值116点
  • 好评度15点
  • 社区居民
  • 忠实会员
阅读:1865回复:2

[已解决] 油猴脚本,同一脚本的不同实例,不能各自互不影响执行吗?

楼主#
更多 发布于:2017-05-08 11:58
我不是专业的,不知道在这里用「异步」是否合适。总之意思是:

同一脚本A,比如:
// ==UserScript==
// 其它字段省略
// @include     网站1
// @include     网站2
// ==/UserScript==
alert("123");

当在访问网站1时,弹出123,然后我没有点关闭;此时再打开网站2,网站2并不会弹出123,直到我关闭网站1的一瞬间,网站2就弹出了123

这给我的感觉是,脚本A 卡在 网站1 那一行了,除非关闭标签页 或者 点yes,否则脚本A就彻底卡住了,也会影响到脚本A在其它标签页的执行。

难道这些实例,不是各自独立执行的吗?还会互相影响?怎么让它们互不影响呢?
(当然我不懂技术,猜测一种说法是,JS解释器跟CPU一样,一次只能执行一行,但你可以中断、调度啊……不然同时打开多个标签页,那JS是怎么跑的啊?不明白)
araki
小狐狸
小狐狸
  • UID50520
  • 注册日期2015-07-19
  • 最后登录2018-03-15
  • 发帖数33
  • 经验33枚
  • 威望0点
  • 贡献值6点
  • 好评度3点
1楼#
发布于:2017-05-08 12:35
不会啊,按照你的说明操作,先访问网站1时,弹出123,没有点关闭;此时再打开网站2,依然会弹出123
FF 53,没开es10
bootislands
火狐狸
火狐狸
  • UID38137
  • 注册日期2012-01-18
  • 最后登录2023-10-03
  • 发帖数136
  • 经验159枚
  • 威望0点
  • 贡献值116点
  • 好评度15点
  • 社区居民
  • 忠实会员
2楼#
发布于:2017-05-08 13:33
araki:不会啊,按照你的说明操作,先访问网站1时,弹出123,没有点关闭;此时再打开网站2,依然会弹出123
FF 53,没开es10
回到原帖
真是邪门,听你说测试正常后,我又试了下原脚本,还是有这问题
于是删删改改,想定位是哪一行的问题,结果突然又正常了,然后一直按Ctrl-Z撤销到修改前,也是正常的
感觉可能是个很难复现的小bug,罕见性的卡住了

谢谢兄弟测试
游客

返回顶部