0

我有一个 Chrome 扩展程序(当前清单 v2,但很快将升级到 v3),它需要与通过更改 URL 中的哈希来模拟页面更改的 SPA 一起使用。

例子:

Page 1: https://www.example.com/somedir/#page1
Page 2: https://www.example.com/somedir/#page2

我有单独的内容脚本#page1#page2,以及网站上其他页面的默认内容脚本。

我遇到的问题是页面最初加载时没有散列,然后在延迟几秒钟后,应用程序添加了#page1散列。换句话说,当用户导航到#page1

  • 该站点最初加载为https://www.example.com/somedir/
  • 我的 #page1 的 Chrome 扩展内容脚本查找包含 glob *#page1,在 URL 中看不到#page1哈希并回退到默认内容脚本
  • 几秒钟的延迟后,站点将#page1哈希附加到 URL,大概是通过设置location.hash(即,URL 现在是https://www.example.com/somedir/#page1

我认为我正在寻找某种方法来检测#page1哈希已添加到 URL,然后强制扩展重新执行并注入正确的内容脚本#page1。有没有办法做到这一点?如果没有,是否有其他方法可以解决此时间问题?

谢谢你。

4

0 回答 0