2014-05-05 138 views
2

這可能聽起來像重複的問題,但我不知道我面臨什麼問題。無法在瀏覽器中打開新標籤頁?

這是我的代碼

<!DOCTYPE html> 
<html> 
<body> 
<script> 
function open() 
{ 
var win = window.open('http://stackoverflow.com/', '_blank'); 
if(win){ 

win.focus(); 
}else{ 
alert('Please allow popups for this site'); 
} 
} 
</script> 
<div align="center"> 
<h4>Online Users</h4> 
<ul> 
<li onClick="open()">John</li> 
</ul> 
</div> 
<link href="http://fonts.googleapis.com/css?family=Open+Sans Condensed:300italic,300,700" rel="stylesheet" type="text/css"> 

    <div class="nomessages"> 

     <img src="../img/unnamed.jpg" id="noMessagesImage" /> 

     </div> 
<div class="chatscreen"> 

     <ul class="chats"> 
      <!-- The chat messages will go here --> 
     </ul> 

    </div> 

<form id="chatform"> 

     <textarea id="message" placeholder="Write something.." rows="10" cols="30"></textarea> 
     <input type="submit" id="submit" value="SEND"/> 

    </form> 


<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script> 
<script src="../js/moment.min.js"></script> 
<script src="/socket.io/socket.io.js"></script> 
<script src="../js/chat.js"></script> 
</body> 
</html> 

我希望能打開當我點擊約翰一個新的標籤,而是它開在同一window.I的網址不知道我在做什麼錯在這裏

+1

我不那麼肯定,但我認爲這行爲是瀏覽器控制的 - 我的意思是,何時打開新窗口或新標籤頁。 – DontVoteMeDown

+0

我正在使用firfox 28.0我在chrome中也面臨同樣的問題。所以有沒有其他的 – Fresher

+0

@ laaposto的答案對我有用。但這是因爲我的瀏覽器設置爲在新標籤中打開,而不是新窗口。打開某個東西的唯一方法是使用'window.open'。但是,瀏覽器決定如何打開它。 – DontVoteMeDown

回答

3

嘗試:

<li onClick="window.open('http://stackoverflow.com/', '')">John</li> 

DEMO

+1

我想打開一個新標籤不是窗口 – Fresher

+1

@Fresher是啊它的工作http://jsfiddle.net/8g55U/。爲我打開一個新標籤。 – DontVoteMeDown

+0

不幸的是,你不能在新選項卡或窗口之間進行選擇。 – Getz

3

使用的OpenX(),而不是打開()。

<!DOCTYPE html> 
<html> 
<body> 
<script> 


function openx() 
{ 
var win = window.open("http://stackoverflow.com/", "_blank"); 
} 
</script> 
<div align="center"> 
<h4>Online Users</h4> 
<ul> 
<li onclick="openx()">John</li> 
</ul> 
</div> 
</body> 
</html> 

Demo

+0

還沒開業 – Fresher

+1

爲我工作。請檢查演示。謝謝:) – Amit

2

嗯,這取決於你的瀏覽器設置:在新窗口中打開,或打開一個新的標籤。 所以很可能,你不能強制瀏覽器打開新標籤而不是窗口。

+0

但是也不打開一個新窗口,即使 – Fresher

2

要打開贏得你應該:

<li onClick="window.open('https://stackoverflow.com/', '_blank')">John</li> 

如果在瀏覽器中沒有設置特殊的行爲上喜歡新的標籤或窗口將在新標籤中打開。但是如果你爲窗口添加額外的參數,它將以新的方式打開。

<li onClick="window.open('https://stackoverflow.com/', '_blank','height=200,width=200')">John</li> 

此外,這個話題有很多討論:功能 2011 year StackOverflow

+0

也不要嘗試覆蓋標準功能。打開=== window.open – deadulya

4

更改名稱,定義一個函數沒有範圍亦相同window.functionName

所以當你定義開放的,你打開window.open 所以更改爲您的功能 打開2或東西的名稱

function open2() 
{ 
var win = window.open('http://stackoverflow.com/', '_blank'); 
if(win){ 

win.focus(); 
}else{ 
alert('Please allow popups for this site'); 
} 
} 

,並在你的HTML

<li onclick="open2()">John</li> 
3

嘗試的功能使用不同的名稱..

<script> 
function open1() 
{ 
    var win = window.open('http://stackoverflow.com/', ''); 
    if(win){ 

    win.focus(); 
} 
else{ 
    alert('Please allow popups for this site'); 
} 
} 
</script> 

HTML標記

<li onclick="open1()">John</li> 
相關問題