在下载到客户端机器之前预处理Javascript

问题描述:

我想在将其下载到客户端浏览器之前预先处理JavaScript文件。我已经成功完成了一个CSS文件,但是当我将相同的条件应用于我的JavaScript文件时,它不起作用。在下载到客户端机器之前预处理Javascript

有谁知道如何使用PHP在下载前预处理.js文件?

感谢

+2

你是什么意思“预处理”?缩小它? – erenon 2011-05-10 16:51:44

+0

不,我想要做的是创建一个JavaScript var与服务器的日期和时间戳。所以我希望PHP在将所有Web文档放在一起下载到客户端浏览器之前将当前的服务器日期时间插入到一个var中。希望澄清。 – 2011-05-10 16:54:03

创建一个文件,比方说jsfile.js.php

header("Content-type: text/javascript"); 
ob_start("ob_gzhandler"); 
include('jsfile.js'); 
ob_flush(); 

现在,而不是包括.js文件,只是包含这个PHP文件。 (我看到你的评论之后)

小编辑: 如果仅约增加变量,可以在HTML定义它们,只是包括js文件之前:

var timestamp = "<?php echo time(); ?> 
<script src="jsfile.js"></script> 
+0

啊,聪明。没有想到这样做。我使用.htaccess来“AddType应用程序/ x-httpd-php .js”,然后我卡住了“”作为我的.JS中的第1行 - - 我会试一试并发回 – 2011-05-10 16:56:08

+0

CSS和JS不需要有正确的扩展名。所以你可以使用任何适合你的东西。 – 2011-05-10 16:59:08

+0

“lonut”感谢您的出色而简单的解决方案。我一直在旋转我的*3天,试图让jQuery与其他各种方法一起工作。您的提示使我开发出这样一种简单的解决方案 - 仅需5分钟。欣赏它!!!!! – 2011-05-10 17:06:37

该项目是伟大的,在JS中缩小,加入和设置变量(但现在明显停止):https://code.google.com/p/jspp/