[英]window.open() simply adds the url to my current url
當我使用 window.open("www.google.com", "_blank");
window.open("www.google.com", "_blank");
打開一個新選項卡,但網址不是“www.google.com”,而是“=url-i-was-at=/www.google.com”。
這是代碼片段(也是唯一相關的代碼)。 http://jsfiddle.net/FUYTY/
在 jsfiddle 中,它的行為有點不同,但仍然無法正常工作。
我究竟做錯了什么?
您想訪問服務器www.google.com
的根文檔,這是使用 URL https://www.google.com/
完成的。 您提供了文檔www.google.com
的相對 URL。
請記住, window.open
接受相對網址和絕對網址,因此它不能假設您像在地址欄中使用www.google.com
時那樣遺漏了https://
。
也許一個例子會有所幫助。 假設當前頁面是http://www.example.com/dir/foo.html
。
window.open("popup.html", "_blank")
打開http://www.example.com/dir/popup.html
。window.open("www.google.com", "_blank")
因此打開http://www.example.com/dir/www.google.com
。 當您說您想要http://www.example.com/dir/www.google.com
時,瀏覽器無法知道您實際上想要https://www.google.com/
,因為后者可能是有效的。
您必須在您的網址中添加http://
:
$(document).ready(function () {
$('#mybtn').on('click', function () {
window.open("http://www.google.com", '_blank');
});
});
修復: http : //jsfiddle.net/FUYTY/4/
嘗試預先添加 http:// (參見 Fiddle http://jsfiddle.net/lkritchey/FUYTY/3/ )
$( document ).ready(function() {
$('#mybtn').on('click', function() {
window.open("http://www.google.com", '_blank');
});
});
更多信息:如果您事先包含一個“/”,它會將您的字符串附加到根 URL。 如果您只是列出字符串,它會將其附加到當前的完整 URL。 如果您包含 http:// 或 https:// ,它知道只使用您放入字符串中的內容(即http://www.google.com )
以http://
開頭您的網址
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.