您的位置:首页 > 其它

将关键字加上对应链接(进行分析)

2007-12-04 15:11 190 查看



// 参数设置 


var defKeyWord="十六大 | 出版社 | 波特的图书 | 国有 | 清醒 | 进行 | 全党| 面向";        




    //输入要替换的字符,字符间用 “ | ”分隔


var keyWordBegin = "记者从人";                    //要替换内容的起始字符


var keyWordEnd = "据汤年";                    //要替换内容的结束字符




/**//****************************/




var tagName = "body";


var aLLContent = document.getElementsByTagName(tagName).item(0).innerHTML;


var fileContent;


var headContent = "";


var endContent = "";


var locationOfKeyWordBegin = aLLContent.indexOf(keyWordBegin);


var locationOfKeyWordEnd = aLLContent.indexOf(keyWordEnd);




if (locationOfKeyWordBegin == -1 && locationOfKeyWordEnd == -1 && keyWordEnd != "" && 






keyWordBegin != "") ...{


    


}




else if (locationOfKeyWordBegin != -1 && locationOfKeyWordEnd != -1 && keyWordEnd != "") ...{


    fileContent = aLLContent.substring(locationOfKeyWordBegin, locationOfKeyWordEnd + 




keyWordEnd.length);


    headContent 
12735
= aLLContent.substring(0, locationOfKeyWordBegin);


    endContent = aLLContent.substring(locationOfKeyWordEnd + keyWordEnd.length);


    splitKeyWord(defKeyWord);


}




else if (keyWordEnd == "" || aLLContent.indexOf(keyWordBegin) != -1) ...{


    fileContent = aLLContent.substring(locationOfKeyWordBegin);


    headContent = aLLContent.substring(0, locationOfKeyWordBegin);


    splitKeyWord(defKeyWord);


}




else if (keyWordBegin == "" && keyWordEnd == "") ...{


    fileContent = aLLContent;


    splitKeyWord(defKeyWord);


}








function splitKeyWord() ...{


    var defChar=defKeyWord.split(" | ");


    var keyWord;


    var links;


    var textFinished = new Array(); 




    for (i = 0; i < defChar.length; i++) 




    ...{


        keyWord = defChar[i];


        links = "<a href="html/jsoperators.asp?gjc=" + keyWord + "">" + keyWord + 




"</a>";


        fileContent = executeReplace(keyWord, links);


    }


    




    if (keyWordEnd == "") ...{


        document.getElementsByTagName(tagName).item(0).innerHTML = 




aLLContent.substring(0, aLLContent.indexOf(keyWordBegin)) + fileContent;


    }




    else ...{


        document.getElementsByTagName(tagName).item(0).innerHTML = 




aLLContent.substring(0, aLLContent.indexOf(keyWordBegin)) + fileContent + 




aLLContent.substring(aLLContent.indexOf(keyWordEnd));


    }


    


    return;


}






function executeReplace(keyWord, links) ...{


        var locationOfKeyWord;


        var locationOfLinkEnd;


        var stringOfChecked;


        var locationOfStart = 0;


        var lenOfkeyWord = keyWord.length;


        var stringSaved = new Array();


        var i = 0;


        var endOfChecked;


        var mark = 0;




        while ((locationOfKeyWord = fileContent.indexOf(keyWord, locationOfStart)) != 






-1) ...{


            stringOfChecked = fileContent.substring(locationOfKeyWord);


            locationOfLinkEnd = stringOfChecked.toLowerCase().indexOf("</a>", 




locationOfStart);


            endOfChecked = stringOfChecked.indexOf(keyWord, links.length);


            




            if (locationOfLinkEnd != -1) ...{




                if (stringOfChecked.toLowerCase().indexOf('<a href') == -1) ...{


                    locationOfStart = locationOfKeyWord + lenOfkeyWord;


                    stringSaved[i] = stringOfChecked;


                    


                    i = i + 1;


                    mark = 1;


                    continue;


                }




                else ...{


                    stringOfChecked = stringOfChecked.replace(keyWord, 




links);


                }


            }




            else ...{


                stringOfChecked = stringOfChecked.replace(keyWord, links);


            }


            


            locationOfBegin = locationOfStart;


            locationOfOld = locationOfKeyWord + lenOfkeyWord - 1;


            locationOfStart = locationOfKeyWord + lenOfkeyWord;


            




            if (endOfChecked == -1) ...{


                stringSaved[i] = stringOfChecked;


            }




            else ...{


                stringSaved[i] = stringOfChecked.substring(0, endOfChecked - 




1);


            }




            if (i == 0) ...{


                stringSaved[i] = fileContent.substring(0, locationOfKeyWord) + 




stringSaved[i] ;


            }


            


            i = i + 1;


            mark = 1;


        }        


        




    if (mark == 0) ...{


        return fileContent;


    }    




    else ...{


        return(stringSaved.join(''));


    }


}


  

 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  function 出版