diff search.js @ 7:23dcd1b5e9c4 default tip

add keywords highlighting on searching result
author Zoe Hong <zhong@mpiwg-berlin.mpg.de>
date Mon, 16 Nov 2015 16:58:39 +0100
parents 4b9ae7d500f9
children
line wrap: on
line diff
--- a/search.js	Wed Oct 14 11:01:26 2015 +0200
+++ b/search.js	Mon Nov 16 16:58:39 2015 +0100
@@ -43,6 +43,7 @@
 	}
 }
 
+
 function checkPassword() { 
 	var password = document.getElementById("pass").value;
 	$.ajax({
@@ -80,4 +81,33 @@
 	if (document.getElementById("pass")) {
 		document.getElementById("popup").style.display = "none";
 	}
+}
+
+
+$(document).ready(function(){
+	highlightKeywords();
+})
+
+function highlightKeywords()	// highlight keywords in content column, with class="content"
+{	
+	if(!$("#keywords")[0])
+		return;
+
+	var keywords = $("#keywords")[0].innerHTML;
+	var keywordsArray = keywords.split(", ");
+	//console.log("keywordsArray: "+keywordsArray);
+
+	var content = $(".content");
+	for (var i = 0; i < content.length; i++) {
+		// find keywords in content[i]
+		var text = content[i].innerHTML;
+		for (var j = 0; j < keywordsArray.length; j++) {
+			var index = text.indexOf(keywordsArray[j]);
+			if (index >= 0) {
+				text = text.substring(0,index) + "<span class='highlight'>" + text.substring(index, index+keywordsArray[j].length) + "</span>" + text.substring(index+keywordsArray[j].length);
+				content[i].innerHTML = text;
+			}		
+		};
+
+	};
 }
\ No newline at end of file