Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/18.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
元素中的jQuery替换字符串中断内容_Jquery_Regex_Replace_Nodevalue - Fatal编程技术网

元素中的jQuery替换字符串中断内容

元素中的jQuery替换字符串中断内容,jquery,regex,replace,nodevalue,Jquery,Regex,Replace,Nodevalue,我正在构建一个基于jQuery的工具提示插件。它很好用!。。。到目前为止 terms是一个数组,其中包含要在站点上标记的单词。标记为存储在带有样式的跨距中的单词 将光标悬停在跨度上时,将显示工具提示 这是标记单词的功能: 函数标记_项(回调){ 术语.forEach(函数(条目){ $('#工具提示的_区域:非(脚本)).contents().filter(函数(){ 返回this.nodeType==3; }).replaceWith(函数(){ regex=newregexp('\\s\\b

我正在构建一个基于jQuery的工具提示插件。它很好用!。。。到目前为止

terms
是一个数组,其中包含要在站点上标记的单词。标记为存储在带有样式的跨距中的单词

将光标悬停在跨度上时,将显示工具提示

这是标记单词的功能:

函数标记_项(回调){
术语.forEach(函数(条目){
$('#工具提示的_区域:非(脚本)).contents().filter(函数(){
返回this.nodeType==3;
}).replaceWith(函数(){
regex=newregexp('\\s\\b'+entry+'\\b\\s',“gi”);
返回此.nodeValue.replace(regex,“+entry+”);
});
回调();
});
}
到目前为止效果还不错。但我有两个问题:

  • 运行此操作的站点包含一些代码块。例如:
  • #包括
    
    用我的方法。。字符串
    也将被替换。。。这样在更换后就看不见了。我想是因为它变成了一个“html元素”

    我怎样才能解决这个问题


  • 第二个问题是:

  • “+entry+”

    我怎样才能暂时保证这个术语将被替换,它和之前的后记一样


    '+entry+''+temp\u word将被替换的单词+'