target=”_blank” XHTML replacement.

December 16th 2009

As you must already know, using target=”_blank” to open a page in a new window doesn’t validate in XHTML.

There’s a javascript workaround tho. This example is based on jQuery since it’s always included in my project and it’s my library of choice but it could be easily converted to any library.

The basics

To replace the target=”_blank” you should use the rel attribute. This attribute is used to specify the relationship  between the document that contains the link and the document it refers to. So your links should have the attribute rel=”external” to specify the link is not a link inside your website but to another website. There are plenty of values possible for you rel attributes, I invite you to read about microformats.

Now rel=”external” doesn’t mean target=”_blank”. Adding that attribute won’t open the links in new windows, it’s only a more semantic way of specifying the relationship between pages. Since some of you might not want to open rel=”external” in new windows, browser vendors didn’t implement it as being the same as a target=”_blank”. That when javascript comes into play.

The javascript

$(function(){
	$('a[rel="external"]').attr('target','_blank');
});

Easy isn’t it?

You actually need to either put that in a script of his own or at the bottom of you webpages. $(function(){ }); is actually the short document.ready call in jQuery. Once the document is ready, it’ll traverse through each link and add the attribute target=”_blank” to them. This way the W3C validator doesn’t see them and you page still validates.

Working markup

Here’s a working example with jQuery loaded.

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
	"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html>
	<head>
		<script src="http://www.google.com/jsapi" type="text/javascript"></script>
		<script type="text/javascript">
			google.load("jquery", "1.3.2");
		</script>

		<script type="text/javascript" charset="utf-8">
			$(function(){
				$('a[rel="external"]').attr('target','_blank');
			});
		</script>
	</head>
	<body>
		<a href="http://google.com" rel="external">Google!</a>
		<a href="http://no-margin-for-errors.com" rel="external">My site!</a>
	</body>
</html>

Your opinion?

What do you think about this technique? I personally stopped caring about my pages not validating when I use target=”_blank”, but I know some people really want to see their page validates whatever the price.

65 Responses to “target=”_blank” XHTML replacement.”


  1. pokerseleb says:

    banyak situs poker online yang menjanjikan banyk keuntungan bagi para pemainnya tetapi tidak jarang juga yang tidak mendapatkan keuntungan. tetapi berbeda jika anda bermain di pokerseleb anda hanya mempunyai modal 100 ribu bisa bermain dengan banyak keuntungan dan bonus setiap hari yang akan di bagikan setiap hari untuk anda jadi anda tidak perlu takut untuk bermain judi poker online di pokerseleb .
    “https://pokerseleb.wordpress.com/2019/09/30/situs-idn-poker-online-terpercaya/”

  2. alis cuan says:

    alisterpaine Merupakan Blog Situs Agen Judi Casino Online Resmi Terpercaya Dan Slot Online Uang Asli Rupiah terbaik Di Indonesia

    http://www.alisterpaine.info/cara-daftar-akun-baccarat-online-terpercaya-dapat-bonus-20-langsung/

  3. alis cuan says:

    Anda sedang mencari Agen Casino Online uang asli Resmi Terpercaya Dan Slot Online Uang Asli Rupiah terbaik Di Indonesia Saat ini ?Nah inilah dia link resminya http://www.alisterpaine.info/ Jadi kalo anda mau bermain Judi online, anda bisa memulainya dari sini dengan mudah tanpa ribet anda bisa mendapatkan keuntungan besar disini

  4. TogelOnline says:

    Bagi anda para penggemar permainan judi togel online, Berikut ini adalah beberapa tips dan trick jitu dalam bermain judi togel untuk menang hingga jutaan rupiah setiap hari nya
    togel wap sgp

  5. Bungatogel says:

    “Anda sedang mencari Bandar Togel dan Casino Online yang Terpercaya ? Pastikan bettingan anda hanya di BUNGATOGEL yang merupakan bandar togel terpercaya dan casino online terpercaya

  6. Bungatogel says:

    Anda sedang mencari Bandar Togel dan Casino Online yang Terpercaya ? Pastikan bettingan anda hanya di BUNGATOGEL yang merupakan Bandar Togel dan Casino Online Terpercaya.

  7. Bungatogel says:

    Anda sedang mencari Bandar Togel dan Casino Online yang Terpercaya ? Pastikan bettingan anda hanya di BUNGATOGEL yang merupakan Bandar Togel dan Casino Online Terpercaya.

  8. lucy says:

    Jadi member di Situs Togel Online terpercaya anda bisa mendapatkan cara menang togel 4 angka 100% jitu pasti tembus. Anda bisa bermain di Pasaran Togel Resmi seperti Singapore, Hongkong, dan Sydney.
    Daftar aku baru di situs ini langsung dapat bonus 100rb rupiah, untuk informasi lebih lanjutnya anda bisa mengunjungi situs http://oriskanycharterboats.com/

  9. bermain judi poker online di idn poker bisa dapat banyak keuntungan dan banyak bonusnya setiap hari bermain di idn poker hanya dengan modal 10 ribu anda sudah bisa bermain di idn poker dan bisa dapat banyak bonusnya, ayo klik link di bawah ini untuk bermain di idn poker.
    https://connect.innovateuk.org/web/pokerseleb/~/405026/profile

  10. YowinJoker says:

    Hello, I’m very glad I found your website, I actually found you by mistake, when I was researching on Askjeeve for something
    Other, Nonetheless I am here now and just want to say praise for this extraordinary post and don’t forget to visit our website YOWINJOKER Is the best choice for online gambling players throughout Indonesia, especially for Games and live casino http://198.54.126.88/

  11. IDNPokerWan says:

    Bagi anda para penggemar permainan judi poker online, Berikut ini adalah beberapa tips dan trick jitu dalam bermain judi poker untuk menang hingga jutaan rupiah setiap hari nya
    http://www.356restorationservices.com/pokerwan-agen-idn-poker-uang-asli-terpercaya-resmi-2020/

  12. IDN Poker uang asli says:

    buat anda yang suka bermain poker, sekarang anda tidak perlu khawatir lagi IDN poker telah hadir di indonesia dengan permainan poker yang di jamin aman untuk di mainkan tanpa adanya kecurangan sedikitpun, karena sudah memiliki lisensi dari PAGGCOR dan BMMtestlabs yang menjamin seluruh permainan aman untuk dimainkan, dengan berbagai bonus yang bisa anda dapatkan dengan mudah setiap hari.
    https://situspokers-onboarding-tutoria-04736f.webflow.io/

  13. idnpokeronline says:

    Tahukah kalian bahwa ada perbedaan dari main di situs agen IDN Poker dan yang lainnya. mulai dari Penampilan situsnya yang tidak membingungkan, jumlah pemain yang banyak, server yang stabil dan tidak terjadi lag saat permain ada ribuan orang, dan yang trakhir pastinya adalah situs yang sudah mengantongi beberapa lisensi resmi dari PAGCOR dan BMM Testlabs http://asdbushidocenter.forumup.it/profile.php?mode=viewprofile&u=3502&mforum=asdbushidocenter

  14. idnpokeronline says:

    Mulai dari Texas Poker Online Pot Omaha hingga Ceme Keliling bisa anda mainkan hanya dengan modal awal sebesar 10.000 dan bisa dapat jackpot hingga ratusan ribu rupiah setiap harinya. kelebihan nya tidak sampai situ saja, ada banyak bonus yang bisa anda rasakan saat pertama kali mendaftar. Buruan klik linknya sekarang http://asdbushidocenter.forumup.it/profile.php?mode=viewprofile&u=3502&mforum=asdbushidocenter

Leave a Reply