Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/367.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/80.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何使用jQuery在包含换行符的文本周围添加跨换行符?_Javascript_Jquery_Html_Bookmarklet - Fatal编程技术网

Javascript 如何使用jQuery在包含换行符的文本周围添加跨换行符?

Javascript 如何使用jQuery在包含换行符的文本周围添加跨换行符?,javascript,jquery,html,bookmarklet,Javascript,Jquery,Html,Bookmarklet,我正在制作一个书签,有点卡住了,我试图在一些文本周围画一个空格。问题是文本中有大量的brs,这让我头疼 因为它是一个bookmarklet,所以我只能使用jQuery来更改HTML。我只想将文本包装在mediablock下面(这样我就可以截断它),而不想包装mediablock本身 当前HTML结构如下: 名称 这是文本 我想包起来 有了一个跨度,类就更多了 $('.Message').contents().filter(函数(i){ return(this.nodeType==3 | |

我正在制作一个书签,有点卡住了,我试图在一些文本周围画一个空格。问题是文本中有大量的
br
s,这让我头疼

因为它是一个bookmarklet,所以我只能使用jQuery来更改HTML。我只想将文本包装在mediablock下面(这样我就可以截断它),而不想包装mediablock本身

当前HTML结构如下:


名称
这是文本

我想包起来
有了一个跨度,类就更多了
$('.Message').contents().filter(函数(i){
return(this.nodeType==3 | | this.nodeName.toLowerCase()===br')&&i!=0;
}).wrapAll(“”);

请添加您的代码,向我们展示您的尝试。由于某些原因,这在最后一个容器上有效,但在其他容器上删除了文本。谢谢你的邀请response@user2415861-使用javascript获取零散的textNodes需要一点技巧,任何解决方案都将真正依赖于标记,因此您真的不能期望“一个解决方案适用于所有”的东西,您需要构建它以匹配您拥有的确切标记。
$('.Message').contents().filter(function(i) {
    return (this.nodeType === 3 || this.nodeName.toLowerCase() === 'br') && i!=0;
}).wrapAll('<span />');