Я использую jQuery с jsdom (0.2.10). По какой-то причине node.exe (0.6.5.1) никогда не возвращается при работе с HTML, таким как этот:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head></HEAD>
<body></BODY>
</HTML>
Код синтаксического анализа:
var request = require('request'),
jsdom = require('jsdom');
request({ uri:'http://localhost/test.html' }, function (error, response, body) {
jsdom.env({
html: body,
scripts: ['http://code.jquery.com/jquery-1.7.1.min.js'],
done: function (err, window) {
var $ = window.jQuery;
console.log('node.exe should get terminated after this line but does not.');
}
});
});
Использование одного и того же регистра для имен тегов работает, как и ожидалось (то есть, возвращается node.exe). Но так как я не контролирую HTML, который я анализирую, мне интересно, есть ли способ обойти эту проблему. Кроме того, body.toLowerCase()
помогает завершить node.exe, однако это нереалистичное решение, поскольку мне нужно сохранить исходный регистр текстовых узлов.
Спасибо.