27 lines
865 B
JavaScript
27 lines
865 B
JavaScript
|
// Use 'page.injectJs()' to load the script itself in the Page context
|
||
|
|
||
|
"use strict";
|
||
|
if ( typeof(phantom) !== "undefined" ) {
|
||
|
var page = require('webpage').create();
|
||
|
|
||
|
// Route "console.log()" calls from within the Page context to the main Phantom context (i.e. current "this")
|
||
|
page.onConsoleMessage = function(msg) {
|
||
|
console.log(msg);
|
||
|
};
|
||
|
|
||
|
page.onAlert = function(msg) {
|
||
|
console.log(msg);
|
||
|
};
|
||
|
|
||
|
console.log("* Script running in the Phantom context.");
|
||
|
console.log("* Script will 'inject' itself in a page...");
|
||
|
page.open("about:blank", function(status) {
|
||
|
if ( status === "success" ) {
|
||
|
console.log(page.injectJs("injectme.js") ? "... done injecting itself!" : "... fail! Check the $PWD?!");
|
||
|
}
|
||
|
phantom.exit();
|
||
|
});
|
||
|
} else {
|
||
|
alert("* Script running in the Page context.");
|
||
|
}
|