jquery – obter o caminho do URL?

Eu sei que posso usar window.location.pathname para retornar um URL, mas como faço para analisar o URL?

Eu tenho um URL como este: http: // localhost / messages / mine / 9889 e estou tentando verificar para ver se “meu” existe nesse URL?

Então, se “meu” é a segunda parte desse URL, eu quero escrever uma declaração if baseada nisso …

if(second argument == 'mine') { do something } 

 if ( location.pathname.split("/")[2] == "mine" ) { do something } 

Embora seja obviamente melhor verificar se há itens suficientes na matriz retornados por divisão:

 var a = location.pathname.split("/"); if ( a.length > 2 && a[2] == "mine" ) { do something } 

Observe que, embora os índices de array sejam baseados em zero, queremos especificar 2 como o índice para obter o que você chama de segundo argumento como split splits “/ messages / mine / 9889” em uma matriz de 4 itens:

 ["", "messages", "mine", "9889"] 

Se jquery é uma opção, você poderia fazer o seguinte:

 $.inArray("mine", window.location.pathname.split("/")) 
 if (window.location.pathname.split("/")[2] == "mine") { // it exists }; 

window.location.pathname é uma string no final do dia, então os methods usuais de string se aplicam.

Mesmo que esta seja uma consulta muito antiga … aparece em alguma pesquisa. Então, para adicionar minhas notas … aqui

 url.indexOf('mine') !== -1 

O acima deve ser usado para verificar se url tem uma string … onde para encontrar o caminho, seria melhor usar

 var a = document.createElement('a'); a.href = url; console.log(a.pathname); // if url='http://localhost/messages/mine/9889' // output will be /messages/mine/9889 

Você poderia usar a function string.split (‘/’) para criar uma matriz de itens para verificar, caso contrário, existem vários plugins jQuery que analisam o URL, por exemplo

http://projects.allmarkedup.com/jquery_url_parser/

Intereting Posts