我在我的博客Gadgetcage.com上使用此代码创建博客文章摘要,在此JS代码中,作者禁用了HTML标记,我想在此代码中删除禁用HTML标记功能。请帮帮我!!
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 = summary_noimg;
if(img.length>=1) {
imgtag = '<span style="float:left; padding:0px 10px 5px 0px;"><img src="'+img[0].src+'" width="'+img_thumb_width+'px" height="'+img_thumb_height+'px"/></span>';
summ = summary_img;
}
var summary = imgtag + '<div>' + removeHtmlTag(div.innerHTML,summ) + '</div>';
div.innerHTML = summary;
}
答案 0 :(得分:1)
你只需要避免调用函数:removeHtmlTag(div.innerHTML,summ)。
答案 1 :(得分:0)
如果你想允许html,只需创建一个由
组成的新功能function truncateSummary(strx, chop) {
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+'...';
}
并将var摘要行更改为
var summary = imgtag + '<div>' + truncateSummary(div.innerHTML,summ) + '</div>';
答案 2 :(得分:0)
我对JavaScript知之甚少,但不应该这样做。
function createSummaryAndThumb(pID){
var div = document.getElementById(pID);
var imgtag = "";
var img = div.getElementsByTagName("img");
if(img.length>=1) {
imgtag = '<span style="float:left; padding:0px 10px 5px 0px;"><img src="'+img[0].src+'" width="'+img_thumb_width+'px" height="'+img_thumb_height+'px"/></span>';
}
var summary = imgtag + '<div>' + div.innerHTML + "..." + '</div>';
div.innerHTML = summary;
}
只需使用它并删除removeHtmlTag函数