20 Soru: JavaScript’le geçerli URL’yi al?

tarafından oluşturulan soru Sat, Sep 23, 2017 12:00 AM

Tek istediğim web sitesi URL’sini almak. Bir linkten alınan URL değil. Sayfa yüklenirken, web sitesinin tam, güncel URL'sini alıp istediğim gibi yapabileceğim bir değişken olarak ayarlamam gerekiyor.

    
2762
  1. 2014-06-24 16: 15: 58Z
  2. 2015-08-20 13: 34: 53Z
20 Yanıtlar                              20                         

Kullanım:

 
window.location.href 

Yorumlarda belirtildiği gibi, aşağıdaki satır çalışır, ancak Firefox için tıkanır.

 
document.URL;

Bkz. DOMString türünün URL'si, salt okunur .

    
3415
2018-03-09 02: 06: 18Z
  1. Firefox 12’de document.URL özelliği, window.location’dan window.location.href’da bir bağlantıya (#) güncellenmez. Buraya canlı bir demo koydum: jsfiddle.net/PxgKy Diğer sürümleri test etmedim Firefox’un Chrome 20 ve IE9'da document.URL'u kullanarak hiçbir sorun bulunamadı.
    2012-07-07 16: 26: 20Z
  2. ayrıca ev sahibi olabilir ve konumunuzu temizleyebilirsiniz: window.location.host ve window.location.href.toString().split(window.location.host)[1]
    2012-11-26 11: 59: 23Z
  3. ve sonra document.baseURI ne oldu. Temel olarak url document.baseURI, document.URL, & URL'yi almanın 3 yolu vardır. location.
    2013-08-29 12: 06: 00Z
  4. - 1: name="URL" ile bir çerçeve, resim veya formunuz varsa, bu özellik document nesnesine gölgelenir ve kodunuz bozulur. Bu durumda, document.URL bunun yerine DOM düğümüne atıfta bulunacaktır. Genel nesnenin özelliklerini window.location.href'daki gibi kullanmak daha iyidir.
    2013-12-05 00: 02: 21Z
  5. "galibiyet için window.location.href"
    2014-07-11 12: 31: 48Z

URL Bilgi Erişimi

JavaScript, tarayıcının adres çubuğunda görüntülenen geçerli URL’yi almak ve değiştirmek için birçok yöntem sunar. Tüm bu yöntemler, Location nesnesinin özelliği olan Window nesnesini kullanır. Geçerli URL'ye sahip olan yeni bir Location nesnesini aşağıdaki gibi oluşturabilirsiniz:

 
var currentLocation = window.location;

Temel URL Yapısı

 
<protocol>//<hostname>:<port>/<pathname><search><hash>
  • protokol: İnternetteki kaynağa erişmek için kullanılacak protokol adını belirtir. (HTTP (SSL olmadan) veya HTTPS (SSL ile))

  • ana bilgisayar adı: Ana bilgisayar adı, kaynağa sahip olan ana bilgisayarı belirtir. Örneğin, www.stackoverflow.com. Bir sunucu, ana bilgisayarın adını kullanarak hizmetler sağlar.

  • port: Bir İnternet'e veya başka bir ağ mesajının bir sunucuya ulaştığında iletileceği belirli bir işlemi tanımak için kullanılan bir bağlantı noktası numarası.

  • yol adı: Yol, Web istemcisinin erişmek istediği ana bilgisayardaki belirli kaynak hakkında bilgi verir. Örneğin, /index.html.

  • sorgu: Bir sorgu dizesi, ilgili yolu izlerent ve kaynağın bir amaç için kullanabileceği bir bilgi dizisi sağlar (örneğin, bir arama için parametreler veya işlenecek veriler olarak).

  • karma: Bir URL’nin bağlantı kısmı, karma işaretini (#) içerir.

Bu Location nesne özellikleriyle, bu URL bileşenlerinin tümüne ve ayarlayabilecekleri veya döndürebileceklerine erişebilirsiniz:

  • href - URL'nin tamamı
  • protokol - URL’nin protokolü
  • ana bilgisayar - URL'nin ana bilgisayar adı ve bağlantı noktası
  • ana bilgisayar adı - URL’nin ana bilgisayar adı
  • bağlantı noktası - sunucunun URL için kullandığı bağlantı noktası numarası
  • yol adı - URL’nin yol adı
  • arama - URL’nin sorgu kısmı
  • karma - URL’nin bağlantı kısmı

Umarım cevabını almışsındır ..

    
600
2018-07-16 11: 54: 25Z
  1. window.location'un "yöntemleri" değil, özellikleri ve burada örnek : var stringPathName = window.location.pathname.
    2014-07-22 22: 18: 40Z
  2. @ FabioC. substring ile kaldırabilirsiniz. Ancak, document.location = "/page.html"; yönlendirmek için kullanmak istediğinizde page.html kök sayfasına yönlendirirseniz yararlı olabilir
    2016-12-23 05: 11: 32Z
  3. Akılda tutunuz ie9 pathname'da eğik çizgi yok, bu yüzden index.html olabilir.
    2017-06-05 14: 55: 11Z
  4. Bu, belirtilen sorudan daha fazlasını cevaplar. Aslında, bir ay kadar önce URL dizgisinden bir veya daha fazla belirli bölüm çıkarmanın iyi bir yolunu aradım (sanırım muhtemelen almaya çalıştığım sayfadı sanırım) ve diğer sorular daha fazla olmuştu. - hedef, cevapları bu amaç için bu kadar yararlı ve kolay değildi.
    2019-01-07 07: 10: 11Z
  5. Yine de bir hızlı öneri: Yukarıda açıklanan temel URL yapısında, search için bir nokta var, ancak aşağıdaki açıklamalar listesinde, query olarak adlandırılıyor. Belki ya mutabakat sağlanabilir, ya da daha fazla açıklama eklenebilir.
    2019-01-07 07: 11: 56Z

konum nesnesine okuma ve yazma erişimi için window.location kullanın geçerli çerçeveyle ilişkilendirilir. Adresi salt okunur bir dize olarak almak istiyorsanız, document.URL ile aynı değeri içermesi gereken window.location.href'u kullanabilirsiniz.

    
314
2019-02-18 11: 48: 01Z
  1. 2010-03-12 09: 06: 29Z

Geçerli sayfa URL’sini alır:

 
window.location.href
    
254
2009-06-23 19: 28: 43Z
  1. Pencerenin konumunun belgenin değil olduğuna dikkat edin.
    2009-06-23 19: 32: 27Z
  2. Aynı şey. Tam geçerli URL, belge yoluna işaret eder (eksternal adres).
    2009-06-23 19: 34: 31Z
  3. document.url gibi standartlaştırıldı mı? (W3c belgesi gibi bir şey demek istiyorum)
    2009-06-23 19: 47: 15Z
  4. 2009-06-23 21: 42: 55Z
  5. document, spec tarafından tanımlanan belge ağacının köküdür. window genellikle eşdeğerdir, ancak bazı tuhaf koşullarda olmayabilir.
    2014-09-19 16: 19: 27Z

Yolu almak için aşağıdakileri kullanabilirsiniz:

 
console.log('document.location', document.location.href);
console.log('location.pathname',  window.location.pathname); // Returns path only
console.log('location.href', window.location.href); // Returns full URL
    
36
2018-09-03 20: 58: 56Z

Geliştirici Araçları 'nı açın, konsoluna aşağıdakini yazın ve Enter ' a basın.

 
window.location

Ör: Geçerli sayfadaki sonucun ekran görüntüsü aşağıdadır.

 buraya resim açıklamasını girin

İhtiyacın olanı buradan al. :)

    
33
2017-06-15 10: 01: 00Z

Kullanın: window.location.href.

Yukarıda belirtildiği gibi, document.URL’u güncellerken window.location güncellenmiyor . MDN bölümüne bakın.

    
27
2014-04-25 16: 14: 28Z

Tamam, geçerli sayfanın tam URL'sini almak, saf JavaScript kullanarak kolaydır. Örneğin, bu kodu bu sayfada deneyin:

 
window.location.href;
// use it in the console of this page will return
// http://stackoverflow.com/questions/1034621/get-current-url-in-web-browser"
  

window.location.href özelliği geçerli sayfanın URL’sini döndürür.

 
document.getElementById("root").innerHTML = "The full URL of this page is:<br>" + window.location.href;
<!DOCTYPE html>
<html>

<body>
  <h2>JavaScript</h2>
  <h3>The window.location.href</h3>
  <p id="root"></p>
</body>

</html>

Bunlardan bahsetmek de fena değil:

  • Göreceli bir yola ihtiyacınız varsa, window.location.pathname kullanın;

  • ana bilgisayar adını almak istiyorsanız, window.location.hostname;

  • kullanabilirsiniz.
  • ve protokolü ayrıca almanız gerekiyorsa, window.location.protocol kullanın

    • ayrıca, sayfanızda hash etiketi varsa, aşağıdaki gibi alabilirsiniz: window.location.hash.

window.location.href hepsi bir kerede ele alır ... temelde:

 
window.location.protocol + '//' + window.location.hostname + window.location.pathname + window.location.hash === window.location.href;
    //true

Zaten pencere kapsamı içindeyse, window kullanmak da gerekli değildir ...

Yani, bu durumda kullanabilirsiniz:

 
location.protocol

location.hostname

location.pathname

location.hash

location.href

 Geçerli URL'yi JavaScript ile alın

    
27
2019-06-25 05: 30: 12Z
  • URL'nin tamamını bulmak için window.location.href'u kullanın.
  • URL’yi ana bilgisayardan bırakmak için window.location.pathname’u kullanın.
19
2015-04-21 09: 08: 28Z
  1. window.location.pathname, sorgu ve karma parçası içermiyor
    2015-06-29 07: 53: 14Z

mevcut URL konumunu bir karma etiketle alabilirsiniz :

JavaScript:

 
 // Using href
 var URL = window.location.href;

 // Using path
 var URL = window.location.pathname;

jQuery :

 
$(location).attr('href');
    
15
2017-05-25 21: 31: 08Z
 
var currentPageUrlIs = "";
if (typeof this.href != "undefined") {
       currentPageUrlIs = this.href.toString().toLowerCase(); 
}else{ 
       currentPageUrlIs = document.location.toString().toLowerCase();
}

Yukarıdaki kod birine yardımcı olabilir

    
10
2014-07-07 09: 54: 01Z
  1. .toLowerCase () öğesini gerçekten değiştiren url'ye uyguladınız. Bazı sunucular büyük /küçük harfe duyarlıdır (linux, vb ...)
    2015-05-15 23: 33: 22Z
  2. Verimli bir şekilde window.href kullanmalısınız. Bu kod yalnızca bu === penceresinin bulunduğu bir bağlamda çalışır, ancak özellikle bu çözümü birileri yapıştırdıysanız her zaman durum böyle olmayabilir.
    2015-05-29 16: 01: 44Z
  3. Büyük /küçük harf duyarlı "bazı" sunucular değil. Bu MOST sunucuları. Bu yüzden AnthonyVO ile aynı fikirdeyim: URL'nin durumunu değiştirmek çok kötü bir fikir.
    2015-06-11 17: 47: 31Z
  4. Bir URL'yi kırmayacağınızdan emin olamayacaksınız! URL http://www.server.com/path/to/Script.php?option=A1B2C3 ise, dosya sistemi büyük /küçük harf duyarlıysa (Linux /Unix) mutlaka Script.php ve script.php aynı değildir. Büyük /küçük harfe duyarlı olmasa bile (Windows, bazı Mac Os), ?option=A1B2C3, ?option=a1b2c3, hatta ?Option=A1B2C3 ile aynı değildir. Yalnızca sunucu büyük /küçük harf duyarlı değildir: www.server.com veya www.SeRvEr.cOm aynıdır.
    2016-09-09 07: 03: 22Z

Hızlı başvuru için sonuç ekleme

  

window.location

 
 Location {href: "https://stackoverflow.com/questions/1034621/get-the-current-url-with-javascript",
 ancestorOrigins: DOMStringList,
 origin: "https://stackoverflow.com",
 replace: ƒ, assign: ƒ, …}
  

document.location

 
  Location {href: "https://stackoverflow.com/questions/1034621/get-the-current-url-with-javascript", 
ancestorOrigins: DOMStringList,
 origin: "https://stackoverflow.com",
 replace: ƒ, assign: ƒ
, …}
  

window.location.pathname

 
"/questions/1034621/get-the-current-url-with-javascript"
  

window.location.href

 
"https://stackoverflow.com/questions/1034621/get-the-current-url-with-javascript"
  

location.hostname

 
"stackoverflow.com"
    
8
2017-11-03 13: 52: 36Z

Sorgu dizeleri içeren URL’nin tamamı için:

 
document.location.toString().toLowerCase();

Ana bilgisayar URL’si için:

 
window.location
    
7
2014-09-13 10: 45: 22Z
  1. .toLowerCase () öğesini gerçekten değiştiren url'ye uyguladınız. Bazı sunucular büyük /küçük harfe duyarlıdır (linux, vb ...)
    2015-05-15 23: 32: 53Z
  2. Dediğim gibi, bir URL'yi kırmayacağınızdan emin olamıyorsunuz !!! URL server.com/path/to/Script.php?option ise = A1B2C3 , eğer dosya sistemi büyük /küçük harf duyarlı ise (Linux /Unix) mutlaka Script.php ve script.php aynı değildir. Büyük /küçük harfe duyarlı olmasa bile (Windows, bazı Mac işletim sistemleri),? Option = A1B2C3? Seçenek = a1b2c3 ile aynı değildir; hatta? Option = A1B2C3. Yalnızca sunucu büyük /küçük harf duyarlı değildir: www.server.com veya www.SeRvEr.cOm aynıdır.
    2016-09-09 07: 06: 40Z
  3. Bunu işaret ettiğiniz için teşekkür ederiz AnthonyVO. URL'nin tamamını almak için yalnızca document.location.toString () öğesini kullanabiliriz. toLowerCase (), betiğinizdeki indexOf gibi bir karşılaştırma yapmak içindi.
    2018-04-23 07: 05: 37Z

jstl'de, geçerli URL yoluna pageContext.request.contextPath kullanarak erişebiliriz. Ajax araması yapmak istiyorsanız, aşağıdaki URL'yi kullanın.

 
url = "${pageContext.request.contextPath}" + "/controller/path"

Örnek: http://stackoverflow.com/posts/36577223 sayfası için bu http://stackoverflow.com/controller/path'u verecektir.

    
4
2017-05-25 21: 32: 13Z

Geçerli konum nesnesini elde etmenin yolu window.location'dur.

Bunu, başlangıçta yalnızca geçerli URL'yi dize olarak döndüren document.location ile karşılaştırın. Muhtemelen karışıklığı önlemek için document.location, document.URL ile değiştirildi.

Ayrıca, tüm modern tarayıcılar document.location - window.location arasındadır.

Gerçekte, tarayıcılar arası güvenliği için, window.location yerine document.location kullanmalısınız.

    
4
2017-05-25 21: 32: 43Z
 
   location.origin+location.pathname+location.search+location.hash;
    
0
2017-04-06 11: 47: 26Z

Geçerli sayfanın tam bağlantısını location.href’a kadar alabilirsiniz. ve geçerli denetleyicinin bağlantısını almak için şunu kullanın:

 
location.href.substring(0, location.href.lastIndexOf('/'));
    
0
2017-05-25 21: 29: 40Z

bu kodun size yardımcı olabileceği kimliği olan belirli bir bağlantıya atıfta bulunuyorsanız.

 
$(".disapprove").click(function(){
                      var id = $(this).attr("id");

                      $.ajax({
                          url: "<?php echo base_url('index.php/sample/page/"+id+"')?>",
                          type: "post",
                          success:function()
                          {
                            alert("The Request has been Disapproved");
                            window.location.replace("http://localhost/sample/page/"+id+"");
                          }
                      });
                });

Kimlik göndermek ve window.location.replace 'ı kullanarak sayfayı yönlendirmek için burada ajax kullanıyorum. sadece belirtildiği gibi id="" niteliğini ekleyin.

    
0
2018-06-30 10: 26: 00Z

Geçerli URL’yi JavaScript ile alma:

  
  • window.location.toString ()

  •   
  • window.location.href

  •   
    
0
2018-09-22 06: 36: 16Z

Öncelikle sayfanın kontrolü tamamen yüklenmiştir

 
browser,window.location.toString();

window.location.href

daha sonra url, URL değişkenini alan ve konsola basan bir işlev çağırın  

$(window).load(function(){
   var url = window.location.href.toString();
   var URL = document.URL;
   var wayThreeUsingJQuery = $(location).attr('href');
   console.log(url);
   console.log(URL);
   console.log(wayThreeUsingJQuery );
});
    
- 2
2019-05-30 10: 34: 04Z
kaynak yerleştirildi İşte