2012-08-23 41 views
0

我想閱讀元標記在頁面加載前過期並重定向到其他網址,如果它已經過期而不顯示此頁面。 我的過期標籤看起來像這樣<META HTTP-EQUIV="Expires" CONTENT="Tue, 21 Aug 2012 14:30:00 GMT">Javascript metatag日期比較和重定向

我已經完成我當前的日期的方式我不認爲我可以比較我的元標記日期與它。 有人可以告訴我,我必須修改它才能使其工作。謝謝

<body onload="compareDate()"> 

function getExpiresContent() { 
    var metas = document.getElementsByTagName('meta'); 

    for (i=0; i<metas.length; i++) { 
     if (metas[i].getAttribute("property") == "Expires") { 
     return metas[i].getAttribute("content"); 
     } 
    } 

    return ""; 
} 

function compareDate(){ 
    var expiresDateString = getExpiresContent(); 
    var expiresDate= new Date(expiresDateString); 
    var currentDate = new Date(); 
    var day = currentDate.getDate(); 
    var month = currentDate.getMonth() + 1; 
    var year = currentDate.getFullYear(); 
    var today = ("<b>" + day + "/" + month + "/" + year + "</b>"); 

    if (expiresDate < today){ 
    window.navigate(」top.jsp」); 
    } 
} 
+0

如果你把這個在onload事件,該頁面已加載。改爲在頭部使用JS塊。 –

+0

從head標籤我怎麼稱呼那個功能,你能告訴我如何格式化兩個日期,所以我可以比較它的權利。謝謝 – user1617247

回答

0

如果你想在頁面加載之前捕捉到這個,你需要在HEAD中使用腳本塊。把你的功能,在腳本塊,然後調用函數後,立即:

<script type='text/javascript'> 
function getExpiresContent() { 
... 
} 

function compareDate() { 
... 
) 

compareDate() 
</script> 

爲了比較的日期,你需要抓住了「過期」的價值,並建立一個Date對象(不是字符串),然後比較一下到當前日期。

見的數據對象是如何工作的這個優秀的解釋:

http://www.elated.com/articles/working-with-dates/