Ich habe Beispiele für die Injektion von jQuery von der ersten Seite gefolgt und das funktioniert gut. Ich habe eine lokale Kopie von jQuery im gleichen Verzeichnis, und tun so etwas wie ...Aussetzen von Variablen aus PhantomJS Aufruf an injectJS
if(page.injectJs('jquery.min.js')) {
page.evaluate(function(){
//Use jQuery or $
}
}
Wenn ich versuche, mein eigenes Skript (n) zu injizieren, keine der Funktionen stehen mir zur Verfügung. Sagen, dass ich ein Skript MyScript.js genannt, die gerade
function doSomething() {
// doing something...
}
Ich kann dann nicht wie verwenden doSomething hat ...
if(page.injectJs('myScript.js')) {
console.log('myScript injected... I think');
page.evaluate(function() {
doSomething();
});
} else {
console.log('Failed to inject myScript');
}
I
window.doSomething = function() {};
und
versucht haben,document.doSomething = function() {};
auch ohne Glück, sowie versuchen, sie mit window.doSomething() oder document.doSomething() in der nachfolgenden page.evaluate() aufzurufen.
Danke, das hat mir sehr geholfen! –