选框,动态更改内容并重新开始滚动

时间:2016-02-09 07:33:17

标签: javascript jquery html marquee

我的网站上有marquee

<marquee>Hello! <span id="text">Welcome to my website.</span></marquee>

我想动态更改来自id="text"的{​​{1}}的范围内容:

marquee
setTimeout(function() {
  document.getElementById("text").innerHTML = "This is my website. Happy reading!";
}, 5000);

一切运作良好。问题是我想在更改文本后从头开始重新启动选取框。想象一下,第一个文本是一个较长的文本,当与另一个文本进行更改时,它在第一次滚动时将不会完全可读;访客将从中间看到它。

所以,我想从头开始重新启动选框滚动。

2 个答案:

答案 0 :(得分:5)

也许不是你想要或期望的。但这应该重新启动选框 我将使用新元素删除并重新插入DOM中的选取框。

&#13;
&#13;
setTimeout(function() {
  document.getElementById("marquee").innerHTML = '<marquee>Hello! <span id="text">This is my website. Happy reading!</span></marquee>';
}, 5000);
&#13;
<div id="marquee">
<marquee>Hello! <span id="text">Welcome to my website.</span>
</marquee>
</div>
&#13;
&#13;
&#13;

答案 1 :(得分:1)

选择您的选取框并使用.start()重新启动它。

&#13;
&#13;
setTimeout(function() {
  document.getElementById("text").innerHTML = "This is my website. Happy reading!";
  document.getElementsByTagName("marquee")[0].start();
}, 5000);
&#13;
<marquee>Hello! <span id="text">Welcome to my website.</span>
</marquee>
&#13;
&#13;
&#13;