如何在cheerio.js中获取节点行号?

时间:2017-09-20 07:03:40

标签: node.js npm cheerio

我正在使用cheerio.js,如下所示:

var $ = cheerio.load(html,{withStartIndices : true});

当我使用console.log($('#element1'));时。它将返回带有字符位置的节点。

   { 
     type: 'tag',
     name: 'h6',
     attribs: { align: 'center', id: 'r' },
     children: [ [Object] ],
     next: null,
     startIndex: 310,
.......

有没有办法在cheerio.js中获取特定元素的行号?

1 个答案:

答案 0 :(得分:1)

这是一个解决方案

const $ = cheerio.load(html, { withStartIndices: true });
const start = $('#element1').get(0).startIndex;
const lineNumber = html.substr(0, start).split('\n').length;