मैं काम करने के लिए jsdom :)Node.js jsdom त्रुटि
यहाँ पाने के लिए कोशिश कर रहा हूँ कोड है:
var jsdom = require("jsdom");
var request = require("request");
var fs = require('fs');
var jquery = fs.readFileSync("./jquery-1.7.2.js", 'utf-8');
request({ uri:'http://nodejs.org/dist/' }, function (error, response, body) {
if (error && response.statusCode !== 200) {
console.log('HTTP request error... '+error);
}
jsdom.env({
html: body,
scripts: [
jquery
],
done: function(errors, window) {
console.log('done');
}
});
});
और यहाँ त्रुटि है:
jsdom.js:171
features = JSON.parse(JSON.stringify(window.document.implementation._fea
^
TypeError: Cannot read property 'implementation' of undefined
मैं अगर जाँच कर ली है पृष्ठ लाया जाता है और यदि jquery lib को पार्स किया जाता है - वे हैं।
हम jsdom.js के कार्यान्वयन पर दे सकता है:
[snip]
exports.env = exports.jsdom.env = function() {
[snip]
window = exports.html(html, null, options).createWindow(),
features = JSON.parse(JSON.stringify(window.document.implementation._features)),
docsLoaded = 0,
[snip]
ऐसा लगता है कि .createWindow() सफल नहीं होता है ...
और मैं यह Cloud9 पर चल रहा हूँ।
किसी भी मदद का स्वागत है।
नोड और jsdom का संस्करण क्या है? यह यहां नोड v0.6.16 और jsdom 0.2.14 के साथ काम करता है। (वैसे, आप 'toStread() 'कॉल के बजाय' fs.readFileSync (पथ, 'utf8') कर सकते हैं (जिस पर आपको शायद 'utf8''' पास करना चाहिए)। –
नोड का संस्करण 0.6.8 है और jsdom का संस्करण 0.2.14 है। – kal3v
यदि कोड सर्वर पक्ष से है तो मुझे लगता है कि "विंडो" केवल ब्राउज़र पक्ष से है – ZiTAL