Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/285.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_Php_Jquery_Html_Anchor - Fatal编程技术网

Javascript 如何在打开新选项卡(打开文件)时保持在选项卡中?

Javascript 如何在打开新选项卡(打开文件)时保持在选项卡中?,javascript,php,jquery,html,anchor,Javascript,Php,Jquery,Html,Anchor,我有一个链接,可以在浏览器中打开pdf。但是,它将重点放在新选项卡上(带有pdf的选项卡)。如何防止这种行为 这是链接: <strong><a style="text-decoration:none" class='row_link' href='javascript:void(0)' target="_blank" onFocus="false">Open File</a></strong> 我尝试在锚中添加onfocus=“false”,但没

我有一个链接,可以在浏览器中打开
pdf
。但是,它将重点放在新选项卡上(带有
pdf
的选项卡)。如何防止这种行为

这是链接:

<strong><a style="text-decoration:none" class='row_link' href='javascript:void(0)' target="_blank" onFocus="false">Open File</a></strong>
我尝试在锚中添加
onfocus=“false”
,但没有效果


这种效果被称为“下弹出”

基本上,您需要在新打开的窗口上使用window.blur()来失去焦点,然后重新聚焦现有选项卡

$("#myTable tbody").on('click','.row_link', function(e) {
var no_s    = $(this).find('.filename').val().replace(/\//g , '');
var b_url   = $('#base_url').val()+"assets/uploads/file/";

var url     = b_url + no_s;
var newWindow = window.open(url);
newWindow.blur();
window.focus();
});

由于您需要打开背景选项卡的行为,请尝试下面的代码,这是本文的一个示例

例如,在jquery中

$("#myTable tbody").on('click','.row_link', function(e) {
    var no_s    = $(this).find('.filename').val().replace(/\//g , '');
    var b_url   = $('#base_url').val()+"assets/uploads/file/";

    var url = document.createElement("a");
    url.href = b_url + no_s;
    var evt = document.createEvent("MouseEvents");
    //the tenth parameter of initMouseEvent sets ctrl key
    evt.initMouseEvent("click", true, true, window, 0, 0, 0, 0, 0,
                            true, false, false, false, 0, null);
    a.dispatchEvent(evt);
});

让我知道这是否有帮助,或者您是否发现了问题如果我理解正确,您需要的是,您不想向用户显示新打开的选项卡。这不能按照@Rex的建议进行,但作为替代方法,您可以打开一个弹出窗口,并尽快将其最小化

请查看以下代码:

父页面

<a href="javascript:openPopUP();">Click to open popup</a>
      <body onLoad="setTimeout('window.blur()', 1000);" 
      onFocus="setTimeout('window.blur()', 1000);">

您不能在浏览器上执行此操作。仅供参考:它仍然集中在pdf选项卡上它仍然集中在pdf选项卡上现在尝试此操作。它可以工作。不要在此页面中运行,请复制并执行此操作。新选项卡未在pdf中打开。它将在新选项卡中打开上一页。它仍然集中在pdf选项卡上。现在pdf无法打开。我不希望要打开任何窗口。因为,用户可以打开多个pdf。如果在新窗口中打开每个pdf,用户可能会在另一台计算机上出现延迟
      <body onLoad="setTimeout('window.blur()', 1000);" 
      onFocus="setTimeout('window.blur()', 1000);">
window.parent.opener.focus();