1. Função de análise URL
A cópia do código é a seguinte:
<Cript>
/**
*@param {string} URL URL completo endereço
*@retorna {objeto} objeto personalizado
*@Descrição Exemplo de uso: var myurl = parseurl ('http://abc.com:8080/dir/index.html?id=255&m=hello#top');
myurl.file = 'index.html'
myurl.hash = 'top'
myurl.host = 'abc.com'
myurl.query = '? Id = 255 & m = hello'
myurl.params = objeto = {id: 255, m: hello}
myurl.path = '/dir/index.html'
myurl.segments = array = ['dir', 'index.html']
myurl.port = '8080'
myurl.protocol = 'http'
myurl.source = 'http://abc.com:8080/dir/index.html?id=255&m=hello#top'
*/
função parseurl (url) {
var a = document.createElement ('a');
a.href = url;
retornar {
Fonte: URL,
Protocolo: A.Protocol.Replace (':', ''),
Anfitrião: A.HostName,
Porto: A.Port,
Consulta: aearch,
params: (function () {
var ret = {},
seg = a.search.Replace (/^/?/, ''). Split ('&'),
len = seg.length, i = 0, s;
para (; i <len; i ++) {
if (! seg [i]) {continue; }
s = seg [i] .split ('=');
ret [s [0]] = s [1];
}
retornar retorno;
}) (),
Arquivo: (a.pathname.match (/// ([^//?#]+) $/i) || [, '']) [1],
Hash: A.Hash.Replace ('#', ''),
Caminho: A.PathName.Replace (/^([^//])/, '/$ 1'),
Relativo: (a.href.match (/tps ?: //// [^//]+(.+)/) || [, '']) [1],
segmentos: a.pathname.Replace (/^///, ''). Split ('/')
};
}
// var myurl = parseurl ('http://abc.com:8080/dir/index.html?id=255&m=hello#top');
var myurl = parseurl ('http: // localhost: 8080/test/mytest/tologina.ction? m = 123 & pid = abc');
alerta (myurl.path);
alerta (myurl.params.m);
alerta (myurl.params.pid);
</script>
2. Análise de URL segmentada JS
URL: Localizador de recursos uniformes (URL)
O URL completo consiste nessas peças: esquema: // host: porta/path? Consulta#fragmento
A cópia do código é a seguinte:
Esquema = Protocolo de Comunicação (comumente usado HTTP, FTP, Maito, etc.)
host = host (nome de domínio ou IP)
porta = número da porta
caminho = caminho
Query = Query (opcional, usado para passar parâmetros para páginas dinâmicas da web (como páginas da web feitas usando CGI, ISAPI, PHP/JSP/ASP/ASP.NET e outras tecnologias). Pode haver vários parâmetros, separados pelo símbolo "&" e o nome e o valor de cada parâmetro são separados pelo "Symbol".
fragmento = fragmento de informação (uma string usada para especificar fragmentos em um recurso de rede. Por exemplo, se houver várias explicações substantivas em uma página da web, você poderá usar o fragmento para localizar diretamente um determinado termo explicação (também conhecida como âncora.)))))
Para tal URL
//www.vevb.com:80/seo/?ver=1.0&id=6#imhere
Podemos obter as várias partes dele em JavaScript
1, Window.Location.href
Toda a string de URL (a barra de endereço completa no navegador)
2, Window.Location.protocol
A parte do protocolo do URL
Este exemplo retorna o valor: http:
3, Window.Location.Host
A parte anfitriã do URL
Valor de retorno neste exemplo: www.vevb.com
4, Window.Location.port
A parte da porta do URL
Se a porta 80 padrão for usada (atualização: mesmo se: 80 for adicionado), o valor de retorno não será o padrão 80, mas o personagem vazio
Este exemplo retorna o valor: ""
5, Window.Location.PathName
A parte do caminho do URL (que é o endereço do arquivo)
Este exemplo retorna o valor: /SEO /
6, Window.Location.Search
Parte de consulta (parâmetros)
Além de atribuir valores a linguagens dinâmicas, também podemos fornecer páginas estáticas e usar JavaScript para obter o valor do parâmetro que se acredita ser.
Valor de retorno neste exemplo :? ver = 1.0 & id = 6
7, Window.Location.hash
Ponto de ancoragem
Valor de retorno neste exemplo: #imhere