Я хочу перейти к конкретному div на моей домашней странице, когда вы выбираете событие изменения. Я хочу получить результат www.mysite.com#i-bc
, но между ними добавляется конечная слэш, как www.mysite.com/#i-bc
. Я хочу удалить эту конечную косую черту, используя jquery или что-то еще. Вот мой код:Удаление косой черты на www.mysite.com/#i-bc
Сценарий:
$(function(){
$('.toggle-view').on('change', function() {
var url = $(this).val();
if (url) {
window.location.hash = url;
}
return false;
});
});
Мой HTML выглядит так:
<select class="toggle-view">
<option value="#i-bc">1</option>
<option value="#i-st">2</option>
<option value="#i-mm">3</option>
<option value="#i-cc">4</option>
</select>
<div id="i-bc">some content here </div>
<div id="i-st">some content here </div>
<div id="i-mm">some content here </div>
<div id="i-cc">some content here </div>
Благодаря InAdvance
Hi Immran, я видел [ваш комментарий] (https://stackoverflow.com/posts/comments/70576165) - почему вам нужно удалить '/' после домена? [Этот вопрос/ответ] (https://webmasters.stackexchange.com/a/73986/47104) и [этот другой вопрос/ответ] (https://webmasters.stackexchange.com/a/33074/47104) описывают это как с символом '/', так и без него, URL_is эквивалентен_. [RFC2616 §3.2.2] (http://tools.ietf.org/html/rfc2616#section-3.2.2) и [RFC3986 §6.2.3] (http://tools.ietf.org/html/rfc3986 # section-6.2.3) предполагают, что конечный '/' является предпочтительным. У вас может быть веская причина - если да, сообщите мне. –
Рад видеть ваш комментарий здесь, я хочу перейти к другому div на той же странице (это моя домашняя страница, которая содержит '/' в конце), когда применяется триггер обмена. Я хочу что-то вроде 'mysite.com # i-bc' или' mysite.com # i-bc/', но не' mysite.com/# i-bc'. –
Символ '/' указывает _path_ и ** должен ** встречаться перед символом '#' (который указывает на _fragment_), если они присутствуют. Вам нужно использовать 'example.com/my/url # abc', а не' example.com # abc/my/url' (это установило бы _fragment_ ['#'] в 'abc/my/url'). [Спецификация _demands_ this] (https://tools.ietf.org/html/rfc3986#section-3); вы не можете изменить порядок. Примечание: Я спросил **, почему ** вам это нужно - ваш код должен по-прежнему работать с '/'. Вы также можете рассмотреть [API истории HTML5] (https://css-tricks.com/using-the-html5-history-api/) - это устраняет необходимость в '#' (_fragments_). –