function parseArgs() { var args = require('system').args; var parsedArgs = {}, parts; for (var i=1; i<args.length; ++i) { var pair = args[i].split(' '); switch(pair[0]) { case '--url': parsedArgs.url = pair[1]; break; case '--out': parsedArgs.out = pair[1]; break; case '--crop': parts = pair[1].split('x'); parsedArgs.crop = { top: parseInt(parts[0], 10), left: parseInt(parts[1], 10), width: parseInt(parts[2], 10), height: parseInt(parts[3], 10), cropToPage: parts[4] === 'true' }; break; case '--viewport': parts = pair[1].split('x'); parsedArgs.viewportSize = { width: parseInt(parts[0], 10), height: parseInt(parts[1], 10) }; break; case '--timeout': parsedArgs.timeout = parseInt(pair[1]); break; case '--delay': parsedArgs.delay = parseInt(pair[1], 10); break; default: console.error('Unknown arg: ' + args[i]); phantom.exit(ERROR_CODES.badArg); } } return parsedArgs; }
/*global phantom*/ var page = require('webpage').create(), args = require('system').args, optionsArg = '--tests=', options = ''; // Parse command line options for (var i = 0; i < args.length; i++) { if (args[i].indexOf(optionsArg) === 0) { var o = args[i].substr(optionsArg.length); options = o.indexOf('-') === 0 ? o.substr(1) : o; } } page.open('http://modernizr.com/download/#-generate-' + options, function () { console.log(page.evaluate(function () { return document.getElementById('generatedSource').value; })); phantom.exit(); });