Bir bağlantıyı aynı pencerede ve bağlantı içeren sayfayı içeren aynı sekmede açmak istiyorum.
Kullanarak bir bağlantı açmaya çalıştığımda window.open, aynı pencerede aynı sekmede değil, yeni sekmede açılır.
Bir bağlantıyı aynı pencerede ve bağlantı içeren sayfayı içeren aynı sekmede açmak istiyorum.
Kullanarak bir bağlantı açmaya çalıştığımda window.open, aynı pencerede aynı sekmede değil, yeni sekmede açılır.
Yanıtlar:
Name niteliğini kullanmanız gerekir:
window.open("https://www.youraddress.com","_self")
Düzenleme : URL, protokolle başlamalıdır. O olmadan göreceli url açmaya çalışır. Chrome 59, Firefox 54 ve IE 11'de test edilmiştir.
_selfbölümünde açıklanan 5.1.6 Tarama bağlam isimleri arasında Ekim 2014 HTML5 W3C Tavsiye 28 : En w3.org/TR/html/browsers.html#browsing-context-names (ama window.locationyine de temizleyici).
Bunu kullan:
location.href = "http://example.com";
Bağlantının aynı sekmede açıldığından emin olmak için şunu kullanmalısınız: window.location.replace()
Aşağıdaki örneğe bakın:
window.location.replace("http://www.w3schools.com");
URL belirtmeden aynı sayfaya gitmesini sağlayabilirsiniz:
window.open('?','_self');
Javascript'in en önemli özelliklerinden biri, tıklama işleyicilerini anında ateşlemektir. Ben kullanmaktan daha güvenilir bir mekanizma aşağıdaki buldum location.href=''ya location.reload()ya 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);
}
Yukarıdaki kod da yeni sekme / pencere açmak ve tüm pop-up engelleyicileri atlamak için yararlıdır !!! Örneğin
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);
}
Bir tıklama bağlantısı gibi başka bir URL açın
window.location.href = "http://example.com";
Kullanmak zorunda window.openmısın? Kullanmaya ne dersiniz window.location="http://example.com"?
window.open(url, wndname, params), üç argümanı vardır. aynı pencerede açılmasını istemiyorsanız, sadece farklı bir wndname ayarlayın. gibi :
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).
İşte hakkında detaylar window.open(), güvenebilirsiniz!
https://developer.mozilla.org/en/DOM/window.open
bir deneyin ~~
Html 5 ile geçmiş API'sını kullanabilirsiniz .
history.pushState({
prevUrl: window.location.href
}, 'Next page', 'http://localhost/x/next_page');
history.go();
Sonra bir sonraki sayfada durum nesnesine şu şekilde erişebilirsiniz:
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");
}
_blankdemo demeti
<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=etiketinin niteliği gibi bir adıdıra. Aslında, pencerenizi istediğiniz gibi adlandırabilirsiniz. İhtiyacınız olan tek şey farklı bir değer ayarlamak, böylece aynı pencerede veya sekmede açılmayacak.