taoqf / node-html-parser

A very fast HTML parser, generating a simplified DOM, with basic element query support.
MIT License
1.11k stars 107 forks source link

select comment nodes with querySelector #221

Closed milahu closed 1 year ago

milahu commented 2 years ago

this should work

var { parse: parseHtml } = require('node-html-parser')
var html = `a <!-- b --> c`;
var root = parseHtml(html, { comment: true });

// TODO implement
var comment = root.querySelector('!--');

console.log(comment);
console.log(comment.innerHTML == ' b ');
// dont use magic alias tagname. this would break xml
var comment = root.querySelector('comment');

workaround: regex

var { parse: parseHtml } = require('node-html-parser')
var html = `a <!-- b --> c`;
var root = parseHtml(html, { comment: true });

var htmlTemp = root.toString();
var comment = htmlTemp.match(/<!--(.*?)-->/s);

related #13 #220