首页 > 解决方案 > History.pushState() 在 YouTube 页面上不起作用

问题描述

我正在尝试使用 History.pushState() 更改 Youtube 结果页面的 URL(在 youtube 主页的搜索框中输入输入并单击搜索)。它没有显示,我不知道为什么。

这是我到目前为止所拥有的(我正在向另一个脚本发送消息,但这对这个问题不是很重要):

if (window.location.href.includes('/results')) {
   history.pushState({id: 'results'}, '', 'searchedVideos');       
   chrome.runtime.sendMessage({message: 'results'});
}

对此的回答将非常有帮助。谢谢!

编辑:这是我的 manifest.json:

{
  "matches": ["*://www.youtube.com/results*"],
  "css": ["results.css"],
  "js": ["content.js"],
  "run_at": "document_idle"

},

{
  "matches": ["https://www.youtube.com/"],
  "css": ["home.css"],
  "js": ["content.js"],
  "run_at": "document_idle"
},

{
  "css": ["videoRec.css"],
  "matches": ["https://www.youtube.com/watch*"],
  "run_at": "document_idle"
}

标签: javascriptgoogle-chromegoogle-chrome-extension

解决方案


推荐阅读