2013-07-12 61 views
0

我試圖用另一個Intranet站點替換一個選取框,但僅在8和12之間的星期五進行火警測試。 以下是JSFiddle上的代碼:http://jsfiddle.net/bmgh1985/7dKcN/(我想結束的版本也在那裏,但更多的是爲了清晰起見,而不是永久性地在頁面上) 這裏是我到目前爲止所使用的jQuery:在某個特定時間每週替換HTML的函數

function firealarm() { 
    var d = new Date(); 
    var x = d.getday(); 
    var n = d.getHours(); 
    if (n > 8 && n < 12 && x = 5) 
    $(‘.marqueeframe’).replaceWith('<marquee behavior="scroll" direction="left" scrollamount="5"><div class="falarm">The Fire Alarm will be tested this morning</div>><div class="falarm">The Fire Alarm will be tested this morning</div>><div class="falarm">The Fire Alarm will be tested this morning</div></marquee>'); 
} 
window.onload = firealarm; 

任何幫助,將不勝感激! Cheers

+4

邏輯應該是x === 5您將x分配給5 – raam86

回答

2

x = d.getDay(); 並且x == 5是有變化,它的工作

+0

感謝您的指針。主要問題似乎是實際替代(如果我花時間離開,它仍然不會取代)。有任何想法嗎?還有關於如何讓它不那麼麻煩的想法? – bmgh1985

+0

我認爲這裏的問題是,你正試圖用marquee替換一個div .. –

+0

使用以下命令刪除現有的選取框.. $('marquee')。remove(); 使用循環內的以下 $ replaceWith( '

The Fire Alarm will be tested this morning
')( 「marqueeframe。」); –

1

有與代碼幾個問題:

Demo

注意的變化:

if (n > 8 && n < 12 x === 5) -> if (n > 8 && n < 12 && x === 5)

$(‘.marqueeframe’) -> $('.marqueeframe')

replaceWith('<marquee ...</marquee>'); -> replaceWith('<div class="firealarm"><marquee...</marquee></div>'

我也刪除了window.onload包裝,只是因爲它不需要在jsfiddle上,但是請保留原樣在頁面中。

+0

一些代碼已經從代碼中滑出來了(正如上面的OP中的&&)。真正的隨機'而不是'導致了很多問題,但是(不知道爲什麼它要麼)。 – bmgh1985

相關問題