在此JS代码中启用HTML标记

时间:2009-06-23 15:17:40

标签: javascript

我在我的博客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;
}

3 个答案:

答案 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函数