我正在寻找一些可以检查30天是否过去的代码,如果是这样,脚本将停止工作;如果没有,则调用start()
函数。
我只需要在Javascript中完成。
var date = 11;
var month = 10;
var year = 2012;
function Checkday() {
if ( // check 30 days ) {
start();
} else {
stop();
};
};
我也想知道是否有办法在JS文件中添加PHP代码。我知道这是一个愚蠢的问题,但我只是好奇。
提前致谢。
已编辑:
我们将销售JS文件,因此我们将在JS文件中设置日期。所以我们希望它检查到期时间并停止运作。
答案 0 :(得分:3)
我为你做了fiddle。
var date = 10;
var month = 10;
var year = 2012;
var expires = new Date(year, month, date);
function checkDate() {
var d = new Date();
return(d>expires);
}
将您的js文件作为结尾.php并将header('content-type: application/x-javascript');
放在其开头。现在你可以<?php echo $variables; ?>
内部。这项工作必须不适用于ie。
然而:如果您正在销售js并且想要在达到给定时间点时停止此功能:这不能通过javascript解决!任何人都可以编辑一个javascript文件 - 比如日期,月份,年份参数。除了你有一个js打包机,恕我直言 - 不够安全。
答案 1 :(得分:2)
这可能对你有帮助..
var date = 11;
var month = 10;
var year = 2012
function Checkday() {
if ( !isExpired() ) {
start();
} else {
stop();
};
};
function isExpired() {
var current = new Date();
current = current.getTime();
var dateToCheck = new Date();
dateToCheck.setFullYear(year);
dateToCheck.setMonth(month);
dateToCheck.setDate(date + 30)
var checkdate = dateToCheck.getTime();
return checkdate < current
}
答案 2 :(得分:2)
愚蠢的问题,但是什么是阻止您销售此JavaScript文件的人自己打开并更改日期?您是否将此文件出售给他们,以便他们可以在他们的网站上使用它?我必须想象他们会足够聪明地想到这一点。
另外,php是一种服务器端语言,而JavaScript是一种客户端语言,因此将php直接放在JS文件中并不会对你有好处。真的最好的办法是将dateinfo保存在cookie中并在调用函数之前进行检查。