js获取整个li的html,javascript – 获取两个元素之间的所有html

问题:

提取两个标头之间的所有html,包括标头html.标题文本是已知的,但不是格式,标记名称等.它们不在同一个父项中,并且可能(好吧,几乎可以肯定)在其自己的子项中有子子项).

为了澄清:标题可以在< h1>内.或者< div>或任何其他标签.它们也可以被< b&gt ;,< i>,< font>包围.或更多< div>标签.关键是:元素中唯一的文本是标题文本.

我可用的工具是:使用WebBrowser控件的C#3.0,或Jquery / Js.

我已经采用Jquery路线,遍历DOM,但我遇到了孩子的问题并适当地添加它们.这是迄今为止的代码:

function getAllBetween(firstEl,lastEl) {

var collection = new Array(); // Collection of Elements

var fefound =false;

$('body').find('*').each(function(){

var curEl = $(this);

if($(curEl).text() == firstEl)

fefound=true;

if($(curEl).text() == lastEl)

return false;

// need something to add children children

// otherwise we get

etc

if (fefound)

collection.push(curEl);

});

var div = document.createElement("DIV");

for (var i=0,len=collection.length;i

$(div).append(collection[i]);

}

return($(div).html());

}

我应该继续走这条路吗?通过某种递归函数检查/处理子项,还是一种全新的方法更适合?

为了测试,这里有一些示例标记:

Start
Oops
End

任何建议或想法都非常感谢!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值