У мене є тег прив’язки, який має місцеве значення href, і функцію JavaScript, яка використовує значення href, але спрямовує його на дещо інше місце, ніж зазвичай. Тег виглядає так
<a onclick="return follow(this);" href="sec/IF00.html"></a>
і функція JavaScript, яка виглядає так
baseURL = 'http://www.someotherdomain.com/';
function follow(item) {
location.href = baseURL + item.href;
}
Я б очікував, що item.href
це просто поверне короткий рядок "sec / IF00.html", але замість цього він поверне повний href, "http://www.thecurrentdomain.com/sec/IF00.html". Чи є спосіб, що я можу витягнути лише той короткий href, як розміщений у <a>
тезі якоря ? Або я втрачаю це природним поведінкою HTML?
Я вважаю, що я можу використовувати маніпуляцію з рядком, щоб зробити це, але це стає складним, оскільки моя локальна сторінка насправді може бути "http://www.thecurrentdomain.com/somedir/somepath/sec/IF00.html", і моє поле href може або може не мати в ньому підкаталога (наприклад, href="page.html"
проти href="sub/page.html"
), тому я не можу завжди просто видалити кожну річ перед останньою косою рисою.
Вам може бути цікаво, чому я прошу цього, і це тому, що це просто зробить сторінку набагато чистішою. Якщо неможливо отримати лише короткий href (як поміщено в <a>
тег прив’язки ), я, ймовірно, міг би просто вставити додаткове поле в тег, як link="sec/IF00.html"
, але, знову ж таки, це було б трохи месиє.