2016-09-20 84 views
2

我有一个游戏中的选取框,我想重复一次完成。跑马灯循环不是无限的

var elems = "<br />"; 
elems += "<marquee id='m1' direction='left' width='800' scrolldelay='5' scrollspeed='true' scrollamount='2' loop='infinite' >"; 
     if (exp >= 0) { 
      elems += "Galactic News:" + arr0[exp] + ""; 
     } 
     if (lfLvl >= 0) { 

      elems += "Planet News: " + arr1[lfLvl] + ""; 
     } 
     elems += "</marquee>"; 

当我运行的应用程序,该变量去,我想字幕的页面的一部分。它通过罚款。但一旦结束,它不会再开始。如果用户导航并返回,它将重新开始。

我想知道为什么它不重复,以及解决方案的一些原因。如果我做不到,我不会太困扰。这只是一个抛光问题,我想摆脱困境。感谢任何能够提供帮助的人。

另一个可选的解决方案,我在想,是最后一个项目运行时进行检测,并在帐篷已经完成,然后在最后一件事扔说像“饲料的结束”或类似的东西:

if (marquee === over) { 
    elems += "End of Feed"; 
} 

,但我不知道到底该怎么做了变数,所以我还挺有我的手指穿过带属性

loop='infinite' 
+0

只要有人不知道这一点,'marquee'元素已经过时,浏览器可能不支持这个元素。您仍然可以通过使用JavaScript而不使用'marquee'元素来完成此操作。 – Goose

+0

感谢您的支持,但这不适用于任何浏览器。这款游戏将在win10和win10手机的windows store上发布。那很重要吗? – MrEhawk82

+1

是的。它在HTML中被折旧,而不是特别的应用。它现在可能会奏效,但随时可能会停止支持,而且我期待得更早,而不是更晚。 – Goose

回答

3

试着改变你的循环来-1这样的:

<marquee id='m1' direction='left' width='800' scrolldelay='5' scrollspeed='true' scrollamount='2' loop='-1' > 
+0

这个伎俩,我不知道我可以做这样的循环。虽然,这是我使用过marquee元素的第一个(也可能是最后一次)时间。非常感谢! – MrEhawk82

+0

尽量避免选取框元素,它已过时。改为使用jquery和css动画! –

+0

我尽量避免jquery,我没有真正的借口。我只是不喜欢附加庞大的库只使用它的一些资源。我喜欢在“香草”中写我的代码。这样,我的应用程序仍然可以不通过互联网连接 – MrEhawk82