我有一个phoneGap构建项目,每天通过从手机中获取日期值来打开特定页面。
就像一年的完整待办事项列表被写在365页上,我想每天显示一页与当天的日期相匹配。
我有365个HTML页面,如1.html 2.html等...当用户打开应用程序时,它应该检查日期并相应地打开匹配的html页面。
例如:如果今天的日期是1月1日,那么当用户打开应用程序时,它必须打开1.html。如果它的1月2日它必须打开2.html等等。
我试过这个:
document.addEventListener('DOMContentLoaded', function() {
open() }, false);
function open(){
window.open ('1.html','_self',false);
}
它不会工作,我不知道如何将今天的日期值保存在变量中,比较它并将结果传递给相应的打开特定页面。
有人可以帮我解决这个问题吗?我应该使用数组?或者如果声明?请帮忙..非常感谢。
答案 0 :(得分:0)
只需创建一个函数来获取当前日期的日期编号,如:
var dayNumber = function(){
var now = new Date();
var start = new Date(now.getFullYear(), 0, 0);
var diff = now - start;
var oneDay = 1000 * 60 * 60 * 24;
var day = Math.floor(diff / oneDay);
console.log('Day of year: ' + day);
}
之后你可以打开你想要的html页面:
document.addEventListener('DOMContentLoaded', function() {
open() }, false);
function open(){
var number = dayNumber();
var html = number + '.html';
window.open (html,'_self',false);
}
答案 1 :(得分:0)
更改您的代码,如下所示。它会工作。 getDAYNumber()是一个接受日期并返回日期编号的函数。
Date.prototype.getDAYNumber = function() {
var onejan = new Date(this.getFullYear(),0,1);
return Math.ceil((this - onejan) / 86400000);
}
document.addEventListener('DOMContentLoaded', function() {
open() }, false);
function open(){
var daynum = new Date().getDAYNumber();
var htmlPage = daynum+".html";
window.open (htmlPage,'_self',false);
}