提问者:小点点

如何重新启动jQuery报价器


我成功地使用了BenjaminRH的jQuery-ticker。它在提示字段提交后被激发,但是一旦ticker运行了一次并且需要再次被激发,它就不被激发了。

该报价器以以下方式启动

$('.ticker').ticker();

我试图用

$('.ticker').ticker().unbind();
$('.ticker').ticker();

没有成功。帮助是非常宝贵的。多谢了。


共1个答案

匿名用户

这个插件非常轻量级,看起来没有重新启动选项。

一种方法是存储ticker元素html,并使用一个函数来启动替换html并初始化插件的ticker。

然后,可以在任何时候调用该函数来执行重新启动

类似于:

null

const tickHtml = $('.ticker').html();

function startTicker() {
  $('.ticker').html(tickHtml).ticker()
}
// start on page load
$(function() {
  startTicker()
})

// restart on click
$('button').click(function() {
  startTicker()
})
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/jquery-ticker@1.0.0/jquery.ticker.min.js"></script>

<button>Start again</button>

<div class="ticker">
  <strong>News:</strong>
  <ul>
    <li>Ticker item #1</li>
    <li>Ticker item #2</li>
    <li><em>Another</em> ticker item</li>   
  </ul>
</div>