annotate hip.js @ 1:a31bdc4de955

Added autocomplete popup and querysource class
author Atul Varma <varmaa@toolness.com>
date Fri, 09 May 2008 16:48:45 -0700
parents 9e6054e41bdc
children 4ea09b7ce820
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
1
a31bdc4de955 Added autocomplete popup and querysource class
Atul Varma <varmaa@toolness.com>
parents: 0
diff changeset
1 Array.prototype.tagify = function(tagName) {
a31bdc4de955 Added autocomplete popup and querysource class
Atul Varma <varmaa@toolness.com>
parents: 0
diff changeset
2 var result = "";
a31bdc4de955 Added autocomplete popup and querysource class
Atul Varma <varmaa@toolness.com>
parents: 0
diff changeset
3
a31bdc4de955 Added autocomplete popup and querysource class
Atul Varma <varmaa@toolness.com>
parents: 0
diff changeset
4 for (var i = 0; i < this.length; i++) {
a31bdc4de955 Added autocomplete popup and querysource class
Atul Varma <varmaa@toolness.com>
parents: 0
diff changeset
5 result += ("<" + tagName + ">" + this[i] +
a31bdc4de955 Added autocomplete popup and querysource class
Atul Varma <varmaa@toolness.com>
parents: 0
diff changeset
6 "</" + tagName + ">" );
a31bdc4de955 Added autocomplete popup and querysource class
Atul Varma <varmaa@toolness.com>
parents: 0
diff changeset
7 }
a31bdc4de955 Added autocomplete popup and querysource class
Atul Varma <varmaa@toolness.com>
parents: 0
diff changeset
8 return result;
a31bdc4de955 Added autocomplete popup and querysource class
Atul Varma <varmaa@toolness.com>
parents: 0
diff changeset
9 }
a31bdc4de955 Added autocomplete popup and querysource class
Atul Varma <varmaa@toolness.com>
parents: 0
diff changeset
10
a31bdc4de955 Added autocomplete popup and querysource class
Atul Varma <varmaa@toolness.com>
parents: 0
diff changeset
11 function QuerySource() {
a31bdc4de955 Added autocomplete popup and querysource class
Atul Varma <varmaa@toolness.com>
parents: 0
diff changeset
12 var self = this;
a31bdc4de955 Added autocomplete popup and querysource class
Atul Varma <varmaa@toolness.com>
parents: 0
diff changeset
13
a31bdc4de955 Added autocomplete popup and querysource class
Atul Varma <varmaa@toolness.com>
parents: 0
diff changeset
14 var methods = {
a31bdc4de955 Added autocomplete popup and querysource class
Atul Varma <varmaa@toolness.com>
parents: 0
diff changeset
15 getSuggestions : function(query, callback) {
a31bdc4de955 Added autocomplete popup and querysource class
Atul Varma <varmaa@toolness.com>
parents: 0
diff changeset
16 callback([query + " suggestion 1",
a31bdc4de955 Added autocomplete popup and querysource class
Atul Varma <varmaa@toolness.com>
parents: 0
diff changeset
17 query + " suggestion 2"]);
a31bdc4de955 Added autocomplete popup and querysource class
Atul Varma <varmaa@toolness.com>
parents: 0
diff changeset
18 }
a31bdc4de955 Added autocomplete popup and querysource class
Atul Varma <varmaa@toolness.com>
parents: 0
diff changeset
19 };
a31bdc4de955 Added autocomplete popup and querysource class
Atul Varma <varmaa@toolness.com>
parents: 0
diff changeset
20
a31bdc4de955 Added autocomplete popup and querysource class
Atul Varma <varmaa@toolness.com>
parents: 0
diff changeset
21 for (name in methods) {
a31bdc4de955 Added autocomplete popup and querysource class
Atul Varma <varmaa@toolness.com>
parents: 0
diff changeset
22 this[name] = methods[name];
a31bdc4de955 Added autocomplete popup and querysource class
Atul Varma <varmaa@toolness.com>
parents: 0
diff changeset
23 }
a31bdc4de955 Added autocomplete popup and querysource class
Atul Varma <varmaa@toolness.com>
parents: 0
diff changeset
24 }
a31bdc4de955 Added autocomplete popup and querysource class
Atul Varma <varmaa@toolness.com>
parents: 0
diff changeset
25
a31bdc4de955 Added autocomplete popup and querysource class
Atul Varma <varmaa@toolness.com>
parents: 0
diff changeset
26 var gQs = new QuerySource();
a31bdc4de955 Added autocomplete popup and querysource class
Atul Varma <varmaa@toolness.com>
parents: 0
diff changeset
27
a31bdc4de955 Added autocomplete popup and querysource class
Atul Varma <varmaa@toolness.com>
parents: 0
diff changeset
28 function searchBoxQuery( event ) {
a31bdc4de955 Added autocomplete popup and querysource class
Atul Varma <varmaa@toolness.com>
parents: 0
diff changeset
29 gQs.getSuggestions(
a31bdc4de955 Added autocomplete popup and querysource class
Atul Varma <varmaa@toolness.com>
parents: 0
diff changeset
30 event.target.value,
a31bdc4de955 Added autocomplete popup and querysource class
Atul Varma <varmaa@toolness.com>
parents: 0
diff changeset
31 function(suggestions) {
a31bdc4de955 Added autocomplete popup and querysource class
Atul Varma <varmaa@toolness.com>
parents: 0
diff changeset
32 var ac = $("#autocomplete-popup");
a31bdc4de955 Added autocomplete popup and querysource class
Atul Varma <varmaa@toolness.com>
parents: 0
diff changeset
33 ac.html( suggestions.tagify("div") );
a31bdc4de955 Added autocomplete popup and querysource class
Atul Varma <varmaa@toolness.com>
parents: 0
diff changeset
34 ac.show();
a31bdc4de955 Added autocomplete popup and querysource class
Atul Varma <varmaa@toolness.com>
parents: 0
diff changeset
35 }
a31bdc4de955 Added autocomplete popup and querysource class
Atul Varma <varmaa@toolness.com>
parents: 0
diff changeset
36 );
a31bdc4de955 Added autocomplete popup and querysource class
Atul Varma <varmaa@toolness.com>
parents: 0
diff changeset
37 }
a31bdc4de955 Added autocomplete popup and querysource class
Atul Varma <varmaa@toolness.com>
parents: 0
diff changeset
38
0
9e6054e41bdc Origination.
Atul Varma <varmaa@toolness.com>
parents:
diff changeset
39 $(document).ready( function() {
9e6054e41bdc Origination.
Atul Varma <varmaa@toolness.com>
parents:
diff changeset
40 $("#search-box").focus();
1
a31bdc4de955 Added autocomplete popup and querysource class
Atul Varma <varmaa@toolness.com>
parents: 0
diff changeset
41 $("#search-box").keyup( searchBoxQuery );
a31bdc4de955 Added autocomplete popup and querysource class
Atul Varma <varmaa@toolness.com>
parents: 0
diff changeset
42 $("#autocomplete-popup").css(
a31bdc4de955 Added autocomplete popup and querysource class
Atul Varma <varmaa@toolness.com>
parents: 0
diff changeset
43 "width",
a31bdc4de955 Added autocomplete popup and querysource class
Atul Varma <varmaa@toolness.com>
parents: 0
diff changeset
44 $("#search-box").css("width")
a31bdc4de955 Added autocomplete popup and querysource class
Atul Varma <varmaa@toolness.com>
parents: 0
diff changeset
45 );
0
9e6054e41bdc Origination.
Atul Varma <varmaa@toolness.com>
parents:
diff changeset
46 });