I am trying to get zombie.js to activate a link using javascript. The page I'm testing for is:
<html> <body> <div id="test123"> START_TEXT </div> <a href="javascript:go()">GO</a><br/> <script type="text/javascript"> go = function() { var el = document.getElementById("test123"); el.innerHTML = "CHANGED"; } </script> </body> </html>
Script I use:
var zombie = require("zombie"); var browser = new zombie.Browser; browser.visit( "http://localhost:8000/testpage.html", function() { browser.clickLink("GO", function(e, browser, status) { var temp = browser.text("div#test123"); console.log("content:", temp); }); });
I get an error message:
node.js:201 throw e; // process.nextTick error, or 'error' event on first tick ^ Error: Cannot load resource: javascript:go() at History._resource (/home/julian/temp/node_modules/zombie/lib/zombie/history.coffee:75:15) at History._pageChanged (/home/julian/temp/node_modules/zombie/lib/zombie/history.coffee:60:21) at History._assign (/home/julian/temp/node_modules/zombie/lib/zombie/history.coffee:213:19) at Object.location (/home/julian/temp/node_modules/zombie/lib/zombie/history.coffee:51:24) at Object.click (/home/julian/temp/node_modules/zombie/lib/zombie/jsdom_patches.coffee:31:59) at Object.dispatchEvent (/home/julian/temp/node_modules/zombie/node_modules/jsdom/lib/jsdom/level2/html.js:480:47) at /home/julian/temp/node_modules/zombie/lib/zombie/eventloop.coffee:130:16 at EventLoop.perform (/home/julian/temp/node_modules/zombie/lib/zombie/eventloop.coffee:121:7) at EventLoop.dispatch (/home/julian/temp/node_modules/zombie/lib/zombie/eventloop.coffee:129:19) at Browser.dispatchEvent (/home/julian/temp/node_modules/zombie/lib/zombie/browser.coffee:220:30)
When i use
browser.evaluate("go()")
it works. What am I missing?
source share