我有以下“字典”:
var dictionary = {
"Log in again": "Just do it again",
"Test phrase": "Lorem ipsum",
"word": "other word"
}
加载html页面后,我也希望它们也加载。
这是完整的源代码:http://jsfiddle.net/GMJ7y/
现在,我正在苦苦挣扎:有时是一个单词,有时是一个完整的句子。现在,我只能使其与文字配合使用。
有人知道我该怎么做吗?
最佳答案
以下解决方案具有理想的结果,并且效率更高。我只包含了相关代码,有关实现请参见链接的小提琴。
var generatedReplace = []; // Create list
for(var key in dictionary) { // Loop through the dictionary
var word = key.replace(/([[^$.|?*+(){}])/g, '\\$1');
generatedReplace.push(word); // Adds RegExp-string to the list
}
generatedReplace = "\\b(?:" + generatedReplace.join("|") + ")\\b"; //Finish RegExp
generatedReplace = new RegExp(generatedReplace, "g"); // Create RegExp
// Implementation:
$("body *").replaceText(generatedReplace, get_definition );
小提琴:http://jsfiddle.net/GMJ7y/13/