Hoe open je een URL in een nieuw tabblad met JavaScript of jQuery?

Hoe een URL programmatisch te openen in een nieuw tabblad in plaats van in een nieuw venster?


Antwoord 1, autoriteit 100%

Gebruik window.open():

var win = window.open('http://stackoverflow.com/', '_blank');
if (win) {
    //Browser has allowed it to be opened
    win.focus();
} else {
    //Browser has blocked it
    alert('Please allow popups for this website');
}

Afhankelijk van de implementatie van de browser zal dit werken

U kunt niets doen om het in een venster te openen in plaats van in een tabblad.


Antwoord 2, autoriteit 39%

Dit is zo simpel als dit.

window.open('_link is here_', 'name'); 

Functiebeschrijving:

nameis een naam van het venster. De volgende namen worden ondersteund:

  • _blank– URL wordt in een nieuw tabbladgeladen. Dit is standaard.
  • _parent– URL wordt in het bovenliggende frame geladen
  • _self– URL vervangt de huidige pagina
  • _top– URL vervangt alle framesets die kunnen worden geladen

Antwoord 3, autoriteit 13%

als je alle links op een nieuw tabblad wilt openen, probeer dan deze jQuery te gebruiken

$(document).on('click', 'a', function(e){ 
    e.preventDefault(); 
    var url = $(this).attr('href'); 
    window.open(url, '_blank');
});

Antwoord 4, autoriteit 9%

var url = "http://www.example.com";
 window.open(url, '_blank');

Antwoord 5, autoriteit 6%

U kunt eenvoudig een nieuw tabblad maken; doe zoals het volgende:

function newTab() {
     var form = document.createElement("form");
     form.method = "GET";
     form.action = "http://www.example.com";
     form.target = "_blank";
     document.body.appendChild(form);
     form.submit();
}

Antwoord 6, autoriteit 3%

Ik weet dat uw vraag niet aangeeft of u alle tags in een nieuw venster probeert te openen of alleen de externe links.

Maar als u alleen externe links in een nieuw tabblad wilt openen, kunt u dit doen:

$( 'a[href^="http://"]' ).attr( 'target','_blank' )
$( 'a[href^="https://"]' ).attr( 'target','_blank' )

Other episodes