Eu tenho uma tag âncora que tem um valor href local e uma função JavaScript que usa o valor href, mas o direciona para um lugar ligeiramente diferente do que normalmente iria. A tag parece
<a onclick="return follow(this);" href="sec/IF00.html"></a>
e uma função JavaScript que se parece com
baseURL = 'http://www.someotherdomain.com/';
function follow(item) {
location.href = baseURL + item.href;
}
Eu esperaria que item.href
isso retornasse apenas uma string curta de "sec / IF00.html", mas em vez disso, ele retorna o href completo, "http://www.thecurrentdomain.com/sec/IF00.html". Existe uma maneira de retirar apenas o href curto colocado na <a>
etiqueta de âncora ? Ou eu perco isso pelo comportamento natural do HTML?
Suponho que poderia usar uma manipulação de string para fazer isso, mas fica complicado porque minha página local pode ser "http://www.thecurrentdomain.com/somedir/somepath/sec/IF00.html", e meu campo href pode ou pode não ter um subdiretório nele (por ex href="page.html"
vs. href="sub/page.html"
), então nem sempre posso simplesmente remover tudo antes da última barra.
Você pode se perguntar por que estou solicitando isso, e é porque apenas tornará a página muito mais limpa. Se não for possível obter apenas o href curto (como colocado na <a>
tag âncora ), então provavelmente poderia apenas inserir um campo extra na tag, como link="sec/IF00.html"
, mas, novamente, isso seria um pouco mais confuso.
fonte