Obtém o URL atual com JavaScript?

Tudo o que quero é obter o URL do site. Não é o URL retirado de um link. No carregamento da página eu preciso ser capaz de pegar o URL completo e atual do site e defini-lo como uma variável para fazer o que eu quiser.

Usar:

window.location.href 

Como observado nos comentários, a linha abaixo funciona, mas está com defeito para o Firefox.

 document.URL; 

Veja a URL do tipo DOMString, readonly .

Acesso a informações de URL

O JavaScript fornece vários methods para recuperar e alterar o URL atual, exibido na barra de endereços do navegador. Todos esses methods usam o object Location , que é uma propriedade do object Window . Você pode criar um novo object Location que tenha o URL atual da seguinte maneira:

 var currentLocation = window.location; 

Estrutura básica de URL

 //:/ 
  • protocol: especifica o nome do protocolo a ser usado para acessar o recurso na Internet. (HTTP (sem SSL) ou HTTPS (com SSL))

  • hostname: nome do host especifica o host que possui o recurso. Por exemplo, www.stackoverflow.com . Um servidor fornece serviços usando o nome do host.

  • port: Um número de porta usado para reconhecer um processo específico para o qual uma mensagem da Internet ou outra rede deve ser encaminhada quando chega a um servidor.

  • pathname: o caminho fornece informações sobre o recurso específico dentro do host que o Web client deseja acessar. Por exemplo, /index.html .

  • consulta: Uma sequência de consulta segue o componente do caminho e fornece uma sequência de informações que o recurso pode utilizar para algum propósito (por exemplo, como parâmetros para uma pesquisa ou como dados a serem processados).

  • hash: A parte da âncora de um URL, inclui o sinal de hash (#).

Com essas propriedades do object Location você pode acessar todos esses componentes de URL e o que eles podem definir ou retornar:

  • href – o URL inteiro
  • protocolo – o protocolo da URL
  • host – o nome do host e a porta do URL
  • hostname – o nome do host da URL
  • port – o número da porta que o servidor usa para o URL
  • pathname – o nome do caminho do URL
  • pesquisa – a parte da consulta do URL
  • hash – a parte da âncora da URL

Eu espero que você tenha sua resposta

A mesma pergunta foi feita há menos de 24 horas . Para me citar:

Use window.location para access de leitura e gravação ao object de localização associado ao quadro atual. Se você quiser apenas obter o endereço como uma string somente leitura, você pode usar document.URL , que deve conter o mesmo valor que window.location.href .

Obtém o URL da página atual:

 window.location.href 

Para obter o caminho, você pode usar:

 alert("Url ="+document.location); alert("PathName ="+ window.location.pathname);// Returns path only alert("url ="+window.location.href);// Returns full URL 

Use: window.location.href .

Como mencionado acima, document.URL não é atualizado ao atualizar window.location . Veja MDN .

Abra Developer Tools , digite o seguinte no console e pressione Enter .

 window.location 

Ex: Abaixo está a imagem do resultado na página atual.

insira a descrição da imagem aqui

Pegue o que você precisa daqui. 🙂

  • Use window.location.href para obter o URL completo.
  • Use window.location.pathname para obter o URL deixando o host.

Você pode obter o local da URL atual com uma hash tag usando:

JavaScript:

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

jQuery :

 $(location).attr('href'); 

OK, obter o URL completo da página atual é fácil usando JavaScript puro. Por exemplo, tente este código nesta página:

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

A propriedade window.location.href retorna o URL da página atual.

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

JavaScript

The window.location.href

 var currentPageUrlIs = ""; if (typeof this.href != "undefined") { currentPageUrlIs = this.href.toString().toLowerCase(); }else{ currentPageUrlIs = document.location.toString().toLowerCase(); } 

O código acima também pode ajudar alguém

Para URL completo com strings de consulta:

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

Para o URL do host:

 window.location 

Adicionando resultado para referência rápida

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" 

No jstl, podemos acessar o caminho da URL atual usando o pageContext.request.contextPath . Se você quiser fazer uma chamada Ajax, use o seguinte URL.

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

Exemplo: Para a página http://stackoverflow.com/posts/36577223 isso fornecerá http://stackoverflow.com/controller/path .

A maneira de obter o object de localização atual é window.location .

Compare isso com document.location , que originalmente retornava apenas o URL atual como uma string. Provavelmente para evitar confusão, document.location foi substituído por document.URL .

E todos os navegadores modernos mapeiam document.location para window.location .

Na realidade, para segurança entre navegadores, você deve usar window.location vez de document.location .

  location.origin+location.pathname+location.search+location.hash; 

Você pode obter o link completo da página atual através de location.href e para obter o link do controlador atual, use:

 location.href.substring(0, location.href.lastIndexOf('/')); 
 window.location.toString(); 

 window.location.href 

Se você está se referindo a um link específico que tem um ID, esse código pode ajudá-lo.

 $(".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+""); } }); }); 

Eu estou usando ajax aqui para enviar um id e redirect a página usando window.location.replace . Basta adicionar um atributo id="" como indicado.