2016-09-20 169 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