У меня есть тикер новостей, в который я добавил hrefs, которые выступают в качестве якорей для имен html. Как только вы нажмете на один href, url получит добавленное к нему имя #. Вот это новость тикер с HREF #names ...Функция Javascript, когда url имеет # имя добавлено
<div id="ticker-wrapper" class="no-js">
<ul id="js-news" class="js-hidden">
<li>
<a href="#boxone">text</a>
</li>
<li>
<a href="#boxtwo">text</a>
</li>
</ul>
При нажатии на одну из ссылок, он переводится на имя HTML, который выглядит следующим образом ...
<a name="boxone"></a>
Все работает хорошо, за исключением того, что мой тикер игнорирует все настройки, которые он имел, как скорость и непрозрачность. Мое решение состояло в том, чтобы использовать функцию для сброса тикета новостей, когда к URL-адресу добавлено #name. Так первоначально, когда мой URL является ...
www.blah.com/users/1
Моя новостная лента работает хорошо. Затем, если вы нажмете на HREF в новостях тикер изменения URL-адреса в ...
www.blah.com/users/1#boxone
И все настройки бегущей строки перестают работать. Моя функция сброса тикер ...
<script type="test/javascript">
function restartTicker() {
// play ticker
settings.play = true;
settings.paused = false;
// start the ticker again
postReveal();
}
Вопрос Как называется функция, когда #name добавляется к URL? Спасибо
EDIT Я попытался добавить onhashchange. Это верно? Мне интересно, не работает ли функция по желанию.
<script>
if ("onhashchange" in window) {
$.fn.ticker.defaults = {
speed: 0.10,
ajaxFeed: false,
displayType: 'fade',
htmlFeed: true,
debugMode: true,
controls: true,
titleText: 'Latest News: ',
pauseOnItems: 3000,
fadeInSpeed: 300,
fadeOutSpeed: 300
};
}
</script>
Является ли моя реализация закрытой? – DDDD
'if (« onhashchange »в окне)' будет просто проверять, существует ли 'window.onhashchange' (т. Е. Если ваш браузер поддерживает это событие). Вам нужно привязать его к какой-либо функции, установив ее непосредственно 'window.onhashchange = restartTicker; 'или добавив прослушиватель событий' window.addEventListener («hashchange», restartTicker, false); '. –
Я попробовал window.onhashchange = restartTicker; Кажется, это работает, как вы заметили. Моя проблема связана с jquery. Не по теме. Благодарю. – DDDD