我有一個新聞自動收錄器,我添加了hrefs來充當html名字的錨。 一旦你點擊一個href,url就會獲得添加到它的#name。 這裏是新聞股票與HREF #names ...當url有附加#名稱時的Javascript函數
<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>
除了我的自動收報器以外,其他所有的設置都會忽略所有設置,例如速度和不透明度。我的解決方案是使用一個函數來重置新聞報道,當#name被添加到網址。 所以最初的時候我的網址...
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功能?謝謝
編輯 我試着添加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(「window中的onhashchange」)將只檢查是否存在'window.onhashchange'(即如果你的瀏覽器支持這個事件)。你需要通過直接設置'window.onhashchange = restartTicker;'或者添加一個事件監聽器'window.addEventListener(「hashchange」,restartTicker,false)''將它綁定到某個函數。 –
我試了window.onhashchange = restartTicker;這似乎與您注意到的一樣。我的問題是與jQuery。無關。謝謝。 – DDDD