我在互联网上找到了这段代码:
javascript:location.href="googlechrome"+location.href.substring(4);
如果该代码放在Safari中的书签中,它将打开Chrome浏览器并加载用户在Safari中的当前网页。
但我想要的是当用户点击书签时,在Chrome中打开之前,该选项卡将在Safari中关闭。这有可能吗?
答案 0 :(得分:1)
您可以使用window.close()
关闭当前标签。
javascript:location.href="googlechrome"+location.href.substring(4); window.close();
请注意,如果您的网址以https://
而不是http://
开头,您解析网址的方式将无效。
以下示例使用URI.js将当前网址中的协议替换为googlechrome,这应该比使用location.href.substring(4)
更可靠。
<!DOCTYPE html>
<html>
<head>
<script src="https://cdnjs.cloudflare.com/ajax/libs/URI.js/1.7.2/URI.min.js"></script>
<script>
function closeSafariAndOpenChrome()
{
var chromeProtocol = 'googlechrome';
var redirectedUrl = URI(location.href)
.protocol(chromeProtocol);
location.href = redirectedUrl;
window.close();
}
</script>
</head>
<body>
<a href="javascript:closeSafariAndOpenChrome();">Click here to open chrome</a>
</body>
</html>