在jQuery中包含一些文本的范围

是)我有的 :

  • My text
    • blahblahblah

我想要的是 :

 
  • My text
    • blahblahblah

我没有访问HTML标记,我想用jQuery做这件事,像:

 $('.myClass').get_the_text_ubove().wrap(''); 

必须有一些选择“我的文本”的方法,即使它没有类/ id

尝试:

 $('#myId > li').each( function(){ $(this.firstChild).wrap(''); }); 

JS小提琴演示 。

关于想要将class添加到ul

 $('#myId > li').each( function(){ $(this.firstChild).wrap(''); $(this).find('ul').addClass('myClass'); }); 

JS小提琴演示 。

 $($('#myId ul').addClass('myClass')[0].previousSibling).wrap(''); 

JSFIDDLE DEMO

 var ul = document.getElementById("myId"); var li = ul.firstElementChild; var text = li.firstChild; var ul = li.childNodes[1]; ul.classList.add('myClass'); var span = document.createElement("span"); span.textContent = text.data; li.replaceChild(span, text); 

老式的DOM救援。