我的页面中有一个脚本标记,但它没有运行。它只是呈现。
我有以下代码:
var phantom = require('phantom');
phantom.create(function(ph,error) {
c = callback;
ph.createPage(function( page,err ) {
page.setContent( output );
callback = c;
setTimeout(function() {
page.evaluate(function() {
return document.getElementsByTagName('html')[0].innerHTML;
}, function(html) {
callback(html);
});
}, 5000);
});
});
如何告诉幻像“加载”/“执行”页面以便页面上的脚本运行? (我不想使用page.open)
此外,内容为"<p>Page <strong>1</strong> content.</p><button id=\"page1_button\">button</button><script>document.getElementsByTagName('p').innerHTML = 'test';</script>"
答案 0 :(得分:0)
致电page.open
,请参阅http://phantomjs.org/api/webpage了解论据。
第一个参数是一个url,第二个参数是回调。
在回复page.open
时,您应该像之前尝试的那样致电page.evaluate
。
page.open("http://httpbin.org/get", function(status) {
if (status == "success") {
page.evaluate(function() {
// ...
});
}
});