Используя Scrollspy, но я не хочу go к этому href - PullRequest
0 голосов
/ 07 апреля 2020

Я использую scrollspy в меню моей веб-страницы. Насколько я могу судить, нет способа запустить прокрутку по умолчанию для выделения моей панели навигации без указания ссылки на идентификатор на странице. Поэтому в строке меню

<a href="#goHere">Go to Here</a> 

и далее вниз по странице область под названием

<section id="goHere">

- это то, что заставляет работать scrollspy.

Я хочу, чтобы активность scrollspy освещая пункт меню, когда я попадаю в эту часть страницы. Тем не менее, я не хочу щелкать пункт меню и go для этой части страницы. Вместо этого я хочу щелкнуть пункт меню и go на совершенно другом веб-сайте.

Вот что я пробовал.

html:

<a id="actuallyGoThere" href="#goHere">Go to Here</a>

<!-- and much further down -->

<section id="goHere">

javascript:

$('#actuallyGoThere').click(gotoOtherPage)
        event.preventDefault();
        function gotoOtherPage() {
        location.href = 'https://www.google.com';
};

И это работает, вроде. Когда я щелкаю пункт меню «Go to Here», страница сначала прокручивается вниз до этой точки идентификатора на странице, а затем загружает страницу Google. Я бы предпочел это просто go Google без предварительной прокрутки. Использование event.preventDefault (); была попытка перехватить вызов href и аннулировать его, но это не сработало.

Кроме того, большая часть моего меню использует scrollspy в том виде, в котором он спроектирован, поэтому меня не интересует просто бросим scrollspy полностью, чтобы решить эту проблему.

Спасибо за любую помощь. И я бы посчитал себя продвинутым любителем, поэтому хотелось бы получить больше объяснений, чем меньше.

Еще раз спасибо, Крис

...