Quiero abrir un enlace en la misma ventana y en la misma pestaña que contiene la página con el enlace.
Cuando trato de abrir un enlace usando window.open, se abre en una pestaña nueva, no en la misma pestaña en la misma ventana.
Quiero abrir un enlace en la misma ventana y en la misma pestaña que contiene la página con el enlace.
Cuando trato de abrir un enlace usando window.open, se abre en una pestaña nueva, no en la misma pestaña en la misma ventana.
Respuestas:
Debe usar el atributo de nombre:
window.open("https://www.youraddress.com","_self")
Editar : Url debe anteponerse con protocolo. Sin él intenta abrir la URL relativa. Probado en Chrome 59, Firefox 54 e IE 11.
_selfse menciona en la sección 5.1.6 Nombres de contexto de navegación de la Recomendación HTML5 W3C del 28 de octubre de 2014 en: w3.org/TR/html/browsers.html#browsing-context-names (pero window.locationaún está más limpio).
Utilizar este:
location.href = "http://example.com";
Para asegurarse de que el enlace se abra en la misma pestaña, debe usar window.location.replace()
Vea el siguiente ejemplo:
window.location.replace("http://www.w3schools.com");
Puede hacer que vaya a la misma página sin especificar la URL:
window.open('?','_self');
Una de las características más destacadas de JavaScript es disparar controladores onclick sobre la marcha. Encontré el siguiente mecanismo más confiable que usar location.href=''o location.reload()o window.open:
// this function can fire onclick handler for any DOM-Element
function fireClickEvent(element) {
var evt = new window.MouseEvent('click', {
view: window,
bubbles: true,
cancelable: true
});
element.dispatchEvent(evt);
}
// this function will setup a virtual anchor element
// and fire click handler to open new URL in the same room
// it works better than location.href=something or location.reload()
function openNewURLInTheSameWindow(targetURL) {
var a = document.createElement('a');
a.href = targetURL;
fireClickEvent(a);
}
¡El código anterior también es útil para abrir una nueva pestaña / ventana y evitar todos los bloqueadores de ventanas emergentes! P.ej
function openNewTabOrNewWindow(targetURL) {
var a = document.createElement('a');
a.href = targetURL;
a.target = '_blank'; // now it will open new tab/window and bypass any popup blocker!
fireClickEvent(a);
}
Abra otra url como un clic en el enlace
window.location.href = "http://example.com";
¿Tienes que usar window.open? ¿Qué hay de usar window.location="http://example.com"?
window.open(url, wndname, params), tiene tres argumentos. Si no desea que se abra en la misma ventana, simplemente configure un wndname diferente. como :
window.open(url1, "name1", params); // this open one window or tab
window.open(url1, "name2", params); // though url is same, but it'll open in another window(tab).
Aquí están los detalles window.open(), ¡puedes confiar en él!
https://developer.mozilla.org/en/DOM/window.open
pruébalo ~~
Con html 5 puede usar la API de historial .
history.pushState({
prevUrl: window.location.href
}, 'Next page', 'http://localhost/x/next_page');
history.go();
Luego, en la página siguiente, puede acceder al objeto de estado así
let url = history.state.prevUrl;
if (url) {
console.log('user come from: '+ url)
}
Just Try in button.
<button onclick="location.reload();location.href='url_name'"
id="myButton" class="btn request-callback" >Explore More</button>
Using href
<a href="#" class="know_how" onclick="location.reload();location.href='url_name'">Know More</a>
window/ tab.https://developer.mozilla.org/en-US/docs/Web/API/Window/open#Syntax
_self<a
href="url"
target="_self">
open
</a>
const autoOpenAlink = (url = ``) => {
window.open(url, "open testing page in the same tab page");
}
_blankvue demo
<div style="margin: 5px;">
<a
:href="url"
@click="autoOpenAlink"
target="_blank"
>
{{url}}
</a>
</div>
vue
autoOpenAlink(e) {
e.preventDefault();
let url = this.url;
window.open(url, "iframe testing page");
},
target=de etiquetaa. De hecho, puedes nombrar tu ventana como quieras. Todo lo que necesita es establecer un valor diferente, para que no se abra en la misma ventana o pestaña.