Html'de yeni sekmede bağlantı nasıl açılır?


390

Bir HTML projesi üzerinde çalışıyorum ve javascript olmadan yeni bir sekmede nasıl bağlantı açacağımı bulamıyorum.

<a href="http://www.WEBSITE_NAME.com"></a>Bağlantıyı aynı sekmede açtığını zaten biliyorum . Yenide nasıl açılacağı hakkında bir fikrin var mı?


40
kullanım<a href="url" target="_blank">...</a>
Rohit Agrawal

1
Rohit'in söylediği gibi, target = "_ blank" parametresini ekleyin, ancak en azından iki alt çizgi hedef = "__ blank" yaparsanız FireFox'a yeni bir sekmede açılır, ancak aynı çift alt çizgiyi kullanan diğer bağlantıları tıkladığınızda yeni önceki yeni sekmedeki sayfalar, yani yalnızca bir ek sekmeniz daha vardır.
Justin Levene

Yanıtlar:


599

Bağlantının 'hedef' özelliğini şu şekilde ayarlayın _blank:

<a href="#" target="_blank" rel="noopener noreferrer">Link</a>

Düzenleme: diğer örnekler için buraya bakın: http://www.w3schools.com/tags/att_a_target.asp

(Not: Daha önce önerdim blank , _blankçünkü kullanılırsa, yeni bir sekme açar ve daha sonra bağlantı tekrar tıklanırsa aynı sekmeyi kullanır. aynı sekmede açmak için bağlantıya tekrar basıldığında ayarlanacak ve kullanılacak bir çerçeve / pencerenin a).

Güvenlik Konuları!

rel="noopener noreferrer"Kötü niyetle orijinal sekmeyi değiştirmek mümkün olmaktan yeni açılan sekme önlemektir. Bu güvenlik açığı hakkında daha fazla bilgi için şu kaynaklara bakın:


16
Özel hedeflerin tümü bir alt çizgiyle başlar. blankbir çerçevenin veya pencerenin adı olurdu. Çalışıyor gibi görünebilir, çünkü 'boş' adında hiçbiri yoksa yeni bir pencere veya sekme açılacaktır, ancak bağlantıya ikinci bir tıklama, başka bir pencere açmak yerine sayfayı aynı sekmede tekrar açmalıdır.
GolezTrol

2
Sanırım geçersiz değil, sadece farklı. Yerine blanksadece de kullanabilirsiniz fooederken, sanırım _blankaslında özel bir anlamı vardır. Aksini kanıtlayacak hiçbir bilgi bulamıyorum. Yapabilir misin?
GolezTrol

2
@Stefan Hayır, iyi _blankolacak; bağlantıların her biri farklı bir sekmede açılır. Alt çizgi olmadan bir ad belirtirseniz, (ör. blank) Bağlantılar aynı sekmede açılır.
SharkofMirkwood

6
Bir ipucu: _blank kaynaklı güvenlik açığına dikkat edin. Daha fazla bilgi medium.com/@jitbit/...
Aistis

1
Kendine bir örnek olan mathiasbynens.github.io/rel-noopener güvenlik açığı bulunan başka bir sayfa .
PhoneixS

99

Gereksinimlerinize göre bunlardan birini kullanın.

Bağlantılı belgeyi yeni bir pencerede veya sekmede açar:

 <a href="xyz.html" target="_blank"> Link </a>

Bağlantılı belgeyi tıklatıldığı çerçevede açın (varsayılan değerdir):

 <a href="xyz.html" target="_self"> Link </a>

Bağlı belgeyi üst çerçevede açın:

 <a href="xyz.html" target="_parent"> Link </a>

Bağlantılı belgeyi pencerenin tüm gövdesinde açın:

 <a href="xyz.html" target="_top"> Link </a>

Bağlantılı belgeyi adlandırılmış bir çerçevede açın:

 <a href="xyz.html" target="framename"> Link </a>

Bkz. MDN


Bilgi için teşekkürler. Tıklandığında bağlantı yeni sekmede nasıl açılır?
Shajeel Afzal

Yukarıdaki paylaşıldığı gibi kodu html biçiminde kullanın. Target = "_ blank" kullandığınızda, yeni tarayıcıların çoğu varsayılan olarak yeni bir sekmede bağlantıları açar
Öğrenci Daima

1
target="_blank"Bir güvenlik açığı olduğunu unutmayın, mathiasbynens.github.io/rel-noopener
PhoneixS

36

Komutu her bağlantıdan sonra yapmak yerine tüm siteniz için bir kez yapmak istiyorsanız. Burası web sitenizin ve bingo Başkanı içinde deneyin.

<head>
<title>your text</title>
<base target="_blank" rel="noopener noreferrer">
</head>

Bu yardımcı olur umarım


3
rel = "noopener noreferrer" eklemeyi unutmayın
Blundering Philosopher

13

Kullanım target="_blank":

<a href="http://www.example.com/" target="_blank" rel="noopener noreferrer">This will open in a new window!</a>

3
rel = "noopener noreferrer" eklemeyi unutmayın
Blundering Philosopher

6

Ne zaman kullanılır target='_blank':

HTML sürümü (Bazı cihazlar bunu desteklemez):

<a href="http://chriscoyier.net" target="_blank">This link will open in new window/tab</a>

Tüm Cihazlar için JavaScript sürümü:

Rel = "external" kullanımı mükemmel şekilde geçerlidir

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"></script>
<script type="text/javascript">
    $('a[rel="external"]').attr('target', '_blank');
</script>

ve Jquery için aşağıdakini deneyebilirsiniz:

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

Tarayıcı ayarı yeni pencerelerde açmanıza izin vermiyorsa:

href = "google.com";
onclick="window.open (this.href, ''); return false";

1
rel = "noopener noreferrer" eklemeyi unutmayın
Blundering Philosopher


2

Kullanabilirsiniz:

<a href="http://www.WEBSITE_NAME.com"  target="_blank"> Website</a>

Ancak yukarıdakiler sitenizi kimlik avı saldırılarına karşı savunmasız hale getirir. Bağlantınıza rel = "noopener noreferrer" ekleyerek bazı tarayıcılarda olmasını engelleyebilirsiniz. Bu eklendiğinde, yukarıdaki örnek olur:

<a href="http://www.WEBSITE_NAME.com" rel="noopener noreferrer" target="_blank">Website.com</a> 

daha fazla bilgi için göz atın : https://www.thesitewizard.com/html-tutorial/open-links-in-new-window-or-tab.shtml


0

Bunu şöyle yapabilirsiniz:

<a href="https://duckduckgo.com/" target="_blank" rel="noopener noreferrer">Open Duck</a>

Ayrıca, güvenlik ve gizlilik hakkında daha fazla bilgi için MDN'de aşağıdaki URL'ye bakın :

https://developer.mozilla.org/en-US/docs/Web/HTML/Element/a#Security_and_privacy

bu da Hedef = "_ boş" adında iyi bir makaleye bağlantı verir - şimdiye kadarki en az tahmin edilen güvenlik açığı :

https://www.jitbit.com/alexblog/256-targetblank---the-most-underestimated-vulnerability-ever/

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.