Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/380.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 无法在浏览器中打开新选项卡?_Javascript_Html - Fatal编程技术网

Javascript 无法在浏览器中打开新选项卡?

Javascript 无法在浏览器中打开新选项卡?,javascript,html,Javascript,Html,这听起来像是重复的问题,但我不知道我面临什么问题 这是我的密码 <!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'); }

这听起来像是重复的问题,但我不知道我面临什么问题

这是我的密码

<!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>

函数open()
{
var win=window.open('http://stackoverflow.com/","空白",;
如果(赢){
win.focus();
}否则{
警报(“请允许此站点弹出窗口”);
}
}
在线用户
    约翰
我希望在单击John时打开一个新选项卡,但它会在同一窗口上打开url。我不知道我在这里做错了什么

试试:

 <li onClick="window.open('http://stackoverflow.com/', '')">John</li>
  • 约翰
  • 使用openx()而不是open()

    
    函数openx()
    {
    var win=窗口打开(“http://stackoverflow.com/“,”空白“);
    }
    在线用户
    
      约翰

    这取决于您的浏览器设置:在新窗口中打开,或作为新选项卡打开。
    因此,您可能无法强制浏览器打开新选项卡而不是窗口。

    要打开win,您应该:

    <li onClick="window.open('https://stackoverflow.com/', '_blank')">John</li>
    
  • 如果在浏览器中未在“首选新选项卡”或“窗口”上设置特殊行为,它将在“新选项卡”中打开。但如果你为窗口添加额外的参数,它将在新窗口中打开

    <li onClick="window.open('https://stackoverflow.com/', '_blank','height=200,width=200')">John</li>
    
  • John
  • 此外,这个话题有很多讨论:

    更改函数名称,定义不带作用域的函数与window.functionName相同

    所以,当您定义“打开”时,您就超越了Windows.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>
    
    约翰
    尝试为函数使用不同的名称

    <script>
    function open1()
    {
        var win = window.open('http://stackoverflow.com/', '');
        if(win){
    
        win.focus();
    }
    else{
       alert('Please allow popups for this site');
    }
    }
    </script>
    
    
    函数open1()
    {
    var win=window.open('http://stackoverflow.com/', '');
    如果(赢){
    win.focus();
    }
    否则{
    警报(“请允许此站点弹出窗口”);
    }
    }
    
    HTML标记

    <li onclick="open1()">John</li>
    
    约翰
    我想打开一个新选项卡而不是窗口不幸的是,你不能在新选项卡或窗口之间进行选择。@更新鲜的是,你不能选择在新选项卡而不是新窗口中打开。我不太确定,但我认为这种行为是由浏览器控制的-我的意思是,什么时候打开新窗口或新标签。我使用的是firfox 28.0,我在chrome上也面临同样的问题。那么有没有其他的选择呢this@laaposto他的回答对我有用。但这是因为我的浏览器设置为在新选项卡中打开,而不是在新窗口中打开。打开某物的唯一方法是使用
    窗口。打开
    。但决定如何打开它的是浏览器,但它也不会打开新窗口even@Dontvotemedown所以我无能为力,但也不会打开新窗口,也不会试图覆盖标准功能。打开===window.open
    
    <li onclick="open1()">John</li>