A Chromium-based version of Microsoft Edge was recently released.
This Edge can install extensions from the Chrome webstore.
So I installed my own extensions on Edge.
Redirecting to browser-specific pages does not work.
A browser-specific page is a page called chrome://newtab.
Edge://newtab appears to be a similar page.
So I would like to check the execution environment and change the redirect destination.
I don't know how to get it.
For Firefox Webextension and Chrome Extensions, use the following code to obtain the URL:
You can tell by the difference in the URL.
chrome.runtime.getURL("/");
However, Edge and Chrome will return the same value, so this is hard to tell.
There is also a way to check the User-Agent, which is not desirable because it cannot be retrieved until a request is made.
Is there any way to determine the browser?
When I tried again earlier, the redirect from the extension to chrome://newtab worked.
If you hit chrome://newtab on the edge, edge://newtab will replace it.
Also, when I hit about:newtab, edge://newtab was displayed.
Edge appears to be replacing chrome:// or about: with edge://
Currently, we have no choice but to use the User-Agent.
There is also a way to check the User-Agent, which is not desirable because it cannot be retrieved until a request is made.
navigator.userAgent
can be retrieved without request.
(You can also retrieve it with content-script or background-script)
User-Agent Client Hints is recommended in the future.
You can also use the following functions to determine if you are supported:
function isEdge(){
if(navigator.userAgentData){
return navigator.userAgentData.brands.findIndex(item=>item.brand.includes("Edge"))!==-1;
} else{
return navigator.userAgent.indexOf("Edg")!==-1;
}
}
© 2024 OneMinuteCode. All rights reserved.