Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/420.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 让HTML标记汇总_Javascript_Jquery_Tags_Removeclass - Fatal编程技术网

Javascript 让HTML标记汇总

Javascript 让HTML标记汇总,javascript,jquery,tags,removeclass,Javascript,Jquery,Tags,Removeclass,在我的博客模板中,我有一个脚本,可以在我的帖子网格中创建带有拇指的简短摘要。它计算有拇指和无拇指显示的字符数,并在底部放置一个“阅读更多”链接 我的问题是它删除了摘要中的HTML标记。例如,如果我在帖子中有一个列表(ul/il),它不会显示,而是生成纯文本。我希望它能让html标签保持原来在文章中的样子,但保留500(没有拇指)和300(有拇指)字符的长度 我想我必须更改行removeHtmlTag(div.innerHTML,summ)bu我想不出怎么做 我的博客: 整个剧本: posts_n

在我的博客模板中,我有一个脚本,可以在我的帖子网格中创建带有拇指的简短摘要。它计算有拇指和无拇指显示的字符数,并在底部放置一个“阅读更多”链接

我的问题是它删除了摘要中的HTML标记。例如,如果我在帖子中有一个列表(ul/il),它不会显示,而是生成纯文本。我希望它能让html标签保持原来在文章中的样子,但保留500(没有拇指)和300(有拇指)字符的长度

我想我必须更改行
removeHtmlTag(div.innerHTML,summ)
bu我想不出怎么做

我的博客:

整个剧本:

posts_no_thumb_sum = 500;
posts_thumb_sum = 300;
img_thumb_height = 150;
img_thumb_width = 150;


//<![CDATA[
function removeHtmlTag(strx,chop){
if(strx.indexOf("<")!=-1)
{
var s = strx.split("<");
for(var i=0;i<s.length;i++){
if(s[i].indexOf(">")!=-1){
s[i] = s[i].substring(s[i].indexOf(">")+1,s[i].length);
}
}
strx = s.join("");
}
chop = (chop < strx.length-1) ? chop : strx.length-2;
while(strx.charAt(chop-1)!=' ' && strx.indexOf(' ',chop)!=-1) chop++;
strx = strx.substring(0,chop-1);
return strx+'...';
}
function createSummaryAndThumb(pID){
var div = document.getElementById(pID);
var imgtag = "";
var img = div.getElementsByTagName("img");
var summ = posts_no_thumb_sum;
if(img.length>=1) {
imgtag = '<span class="posts-thumb"><img src="'+img[0].src+'" width="'+img_thumb_width+'px" height="'+img_thumb_height+'px"/></span>';
summ = posts_thumb_sum;
}
var summary = imgtag + '<div>' + removeHtmlTag(div.innerHTML,summ) + '</div>';
div.innerHTML = summary;
}
//]]>
posts\u no\u thumb\u sum=500;
职位总数=300;
img_拇指高度=150;
img_拇指宽度=150;
//=1) {
imgtag='';
summ=posts\u thumb\u sum;
}
var summary=imgtag+''+removeHtmlTag(div.innerHTML,summ)+'';
div.innerHTML=摘要;
}
//]]>

只是不要调用removeHtmlTag方法。而不是

    var summary = imgtag + '<div>' + removeHtmlTag(div.innerHTML,summ) + '</div>';
var summary=imgtag+''+removeHtmlTag(div.innerHTML,summ)+'';
做:

var summary=imgtag+''+div.innerHTML+'';

我已经试过了。。。如果我这样做了,我的整个帖子都会显示出来,不再是摘要了。我想知道摘要的长度是否保持在500&300个字符。您能否展示removeHtmlTag方法的实际功能:它看起来不仅仅是剥离html标记。我认为这也将帖子限制在300个字符以内。如果是这样的话,你需要创建另一个方法,可能限制字符只保留你身体的前300个字符,然后你只需要用新方法替换removeHtmlTag方法。看,前两行代码为没有图像的帖子生成500个字符,为有图像的帖子生成300个字符。你可以在我的博客上看到现在的情况:
    var summary = imgtag + '<div>' + div.innerHTML + '</div>';