Jquery 用div在原始文本换行符中查找单词
我试图找到一个开头和结尾的单词,比如INFO和ENDINFO,并用一个.INFO类将这两个单词中的所有内容包装在一个div中 例如:以前Jquery 用div在原始文本换行符中查找单词,jquery,regex,Jquery,Regex,我试图找到一个开头和结尾的单词,比如INFO和ENDINFO,并用一个.INFO类将这两个单词中的所有内容包装在一个div中 例如:以前 <div class="project_content"><img src="http://lorempixel.com/g/400/200/"> <br> INFO <br> Hello I'm an info div <br> ENDINFO <br> Additonal conten
<div class="project_content"><img src="http://lorempixel.com/g/400/200/">
<br>
INFO
<br>
Hello I'm an info div
<br>
ENDINFO
<br>
Additonal content outside of info div
</div>
之后:
<div class="project_content"><img src="http://lorempixel.com/g/400/200/">
<br>
<div class=".INFO">
<br>
Hello I'm an info div
<br>
</div>
<br>
Additonal content outside of info div
</div>
这似乎不起作用。正如你在照片中看到的。任何帮助都很好。“.”将与空白字符不匹配。请尝试此regexp:
var regex = /INFO(.|\s)*ENDINFO/gi;
从您的示例代码来看,您可能希望改进jquery的工作方式。您使用的选择器.INFO和内容与HTML中的任何元素都不匹配,因此您的代码不会执行任何操作 为了让您开始,这里有一种方法可以实现您所说的: 与id='project\u content'匹配的元素 我们以该元素为目标,并将其HTML内容存储在HTML变量中
最后,我们用修改后的版本覆盖HTML内容。$“.INFO”将不匹配任何DOM元素,因此不匹配。生成的.INFO应该放在哪里?附加到正文或其他元素中?您的意思是创建一个新的DIV,还是使用class.INFO附加到一个现有的DIV?其中INFO内容ENDINFO已经存在。目前在图片下方,但也可能在元素之间。这太棒了。有没有办法避免原始文本和css的闪现@乌利亚:图像加载完毕后,你的小提琴的包装被设置为onLoad,当你将其放入无包装头部时,闪光会小得多:再次感谢肖恩,我已经为此奋斗了一段时间。谢谢你的介绍
var regex = /INFO(.|\s)*ENDINFO/gi;
$(document).ready(function(){
var html = $('#project_content').html();
var new_html = html.replace(/(INFO((.|\s)*?)ENDINFO)/, "<div class='INFO'>$2</div>");
$('#project_content').html(new_html);
});
$('#project_content')
var html = $('#project_content').html();
var new_html = html.replace(/(INFO((.|\s)*?)ENDINFO)/, "<div class='INFO'>$2</div>");
$('#project_content').html(new_html);