87,923
社区成员
发帖
与我相关
我的任务
分享
<div id="code">
<!--第一个,注释节点-->
<!--第一个注释节点-->
//第二个注释节点 第二个注释节点
//第二个注释节点
/*
* 第三个注释节点
* 第三个注释节点
* 第三个注释节点
* 第三个注释节点
* 第三个注释节点
*
* */
/*第三个注释节点*/
</div>
<div id="change"></div>
<script src="lib/jquery/jquery.min.js"></script>
<script>
$(function(){
var $code = $('#code'),$change = $('#change'), $codeContent = $('#code').html(),
$lessThanReg = /</mg,$greaterThanReg =/>/mg;
$codeContent = $codeContent.replace($lessThanReg,'<');
$codeContent = $codeContent.replace($greaterThanReg,'>');
var annotationReg = /<!--[\s\S]*?-->$|\/\/[\s\S]*?$|\/\*[\s\S]*?\*\//img;
//annotationReg虽然查找到了所有节点,并且在下面添加了span节点,但是多行注释的时候,并没有换行,请问这个问题如何解决?突然发现,把change这个DOM元素,改为pre即可.......如果不使有pre,请问怎么解决?
$codeContent = $codeContent.replace(annotationReg, function(x) {
return "<span class='huise'>" + x + "</span>"+"<br>";
});
$change.html($codeContent);
})
</script>