2011-05-12 20 views
15

Bir web sitesini dahili olarak yapıyorum ve sayfanın <head>'te ayarlanmış bir canonical URL'si var.JavaScript kullanarak kanonik URL elde etme

Kanonik URL’yi elde etmek için JavaScript’i kullanmanın bir yolu var mı?

+2

Nazik efendim, lütfen size daha iyi bir şekilde yardımcı olabilmemiz için bir HTML örneği verin. – pixelbobby

cevap

15

böyle bir şey?

<!DOCTYPE html> 
<html> 
    <head> 
     <link href="http://www.example.com/" rel="canonical" /> 
     <title>Canonical</title> 
     <script type="text/javascript"> 
      window.onload = function() { 
       var canonical = ""; 
       var links = document.getElementsByTagName("link"); 
       for (var i = 0; i < links.length; i ++) { 
        if (links[i].getAttribute("rel") === "canonical") { 
         canonical = links[i].getAttribute("href") 
        } 
       } 
       alert(canonical); 
      }; 
     </script> 
    </head> 
    <body> 
     <h1>Canonical</h1> 
    </body> 
</html> 
+0

Çok teşekkürler! – Tereno

38

Eh günümüzde sadece kullanabilirsiniz:

document.querySelector("link[rel='canonical']").getAttribute("href"); 

yukarıdaki answear size href özelliğinin gerçek değerini verecektir. Yani tam URL’niz yoksa /query.html gibi href gösterecektir.

Ama .href yöntem alanı http://example.com/query.html gibi olan size her zaman tam URL verecektir:

document.querySelector("link[rel='canonical']").href; 
+0

Doğru veya jQuery. :-) –

+4

Evet. Ama jquery ait 90KB ekleyerek :-) –

+1

Katılıyorum imvho iyi bir seçenek değildir, basit bir şey olsun, ama bir jQuery kullanmaya karar verirse yine de de bu seçiciler için kullanışlı geliyor için. –

16

jquery sürümü;

$("link[rel='canonical']").attr("href")