【发布时间】:2018-07-04 18:30:32
【问题描述】:
我想在 PhantomJS 中包含多个 javascript。 page.includeJS / page.injectJS 不显示包含多个脚本的选项。你能提供一个相同的工作示例吗?
代码:
page.open('index.html', function (openStatus) {
console.log("OPen Status is "+openStatus)
if(openStatus == 'success') {
page.includeJs('http://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js', function(jStatus) {
console.log("Jquery status: "+jStatus)
(page.includeJs('jquery.textillate.js', function(tStatus) {
console.log("Text status: "+tStatus)
(page.evaluate(function () {
var tag = document.getElementById("main-tag")
tag.innerHTML = "Hello World"
document.getElementById("main-tag").textillate({
maxDisplayTime: 2000,
in: { effect: 'fadeInUp',
delay: 7000 }
});
console.log('Textilate is: '+tag)
}))
}))
})
// setInterval(function() {
// page.render('/dev/stdout', { format: "png" });
// if( frames == 0 ){
// phantom.exit();
// }
// frames--;
// }, 40);
}
});
错误: undefined 不是构造函数(评估 'document.getElementById("main-tag").textillate({
【问题讨论】:
-
你有什么错误?
-
@AGoranov 只是无法加载多个 JS 文件。这是错误“TypeError: undefined is not a constructor (evalating 'document.getElementById("main-tag").textillate({" Trying to use texillate.js which requires jQuery.
-
@Cerbrus 我的问题是包含多个 JS 文件并且不只注入一个
-
所以?有什么问题?是什么阻止您使用欺骗目标中描述的方法包含多个文件?
-
@Cerbrus 脚本只是没有加载。你能提供一个可行的例子吗?
标签: javascript jquery node.js phantomjs