我目前在我的系统上设置了 EnvJS(从这里安装)。我的最终目标是加载一个页面,让它的 javascript 处理几秒钟,然后读取 dom 以获取感兴趣的信息。但是我无法让 setTimeout() 工作来挽救我的生命(或者 JQuery )。
我有一个启动该过程的 php 脚本:
...
$ENVJS_PATH = "/var/www/project/src/envjs";
$RHINO_JAR = "rhino/js.jar";
$INIT_SCRIPT = "init.js";
$output = shell_exec("java -jar $ENVJS_PATH/$RHINO_JAR -opt -1 $ENVJS_PATH/$INIT_SCRIPT");
echo "Response from javascript:<br/> $output";
...
init.js 文件如下所示:
load('/var/www/project/src/envjs/dist/env.rhino.js');
print("Loaded env.rhino.js<br/>");
// temporarily commented out
//var url = "http://www.ken-soft.com";
//window.location = url;
//print("<br/>Loaded "+url+"<br/>");
// Problem starts here
var runAfterPause=function() {
print("got here..."); // never gets called
print(document.getElementById('some_id').innerHTML);
}
setTimeout(runAfterPause, 3000); //wait three seconds before continuing
// i have also tried setTimeout("runAfterPause()", 3000);
print("<br/>End<br/>");
任何有关这方面的知识将不胜感激。谢谢。