是否有一个JQuery插件比较两个字符串并突出显示差异
有没有人知道一个比较两个字符串并突出显示差异的JQuery插件。 我试过搜索但是虽然有些东西我找不到特定的JQuery。 一个做我想要的javascript的例子
Javascript Diff算法
这个的问题是我想一次在许多不同的字符串上实现它(在表的每一行上为1)这就是为什么我想要一个Jquery,所以我可以使用JQuerys每个选择器方法
我不会在你的情况下寻找一个jQuery插件。 jQuery是一个帮助处理DOM更改的框架,但是jQuery中没有很多字符串函数。
通过Google找到的另一个与您引用的几乎相同: http : //www.daftlogic.com/sandbox-javascript-compare-differences-between-strings.htm
编辑看起来上面提到的脚本与John Resig使用的脚本相同,感谢指出danishgoel 结束编辑
您的问题是您希望它在表格中的项目列表上运行吗? 你不需要jQuery来实际检查差异,但你可以使用for
循环,或者jQuery each
调用它。
喜欢这个HTML:
- sentence 1
- sentence 2
- sentence 3
这个JavaScript:
var default = "my sentence"; $('#sentences li').each(function(){ var li = $(this); var result = $('').html( diffString( default, li.text() ) ); li.append(result); });
正如您所看到的,这里您在jQuery选择器上使用jQuery,但是您需要一个常规的JavaScript函数。 不需要jQuery插件就可以完全相同。
您可以使用Javascript Diff算法 。
查看演示: http : //jsfiddle.net/gion_13/Z3CRA/1/ 。
而不是直接调用和应用函数:
document.body.innerHTML = diffString( "The red brown fox jumped over the rolling log.", "The brown spotted fox leaped over the rolling log" );
您可以将其包装到jquery插件中:
$.fn.pluginName = function(newValue){ return this.each(function(){ $(this).html( diffString( $(this).text(), newValue ) ); }); }
在谷歌上搜索并得到了这个。 jQueryCompare 。
看看它。