Change onmousedown to onclick on items, set autocomplete=off only if property exists

master
Vitaliy Filippov 2013-10-18 14:14:59 +00:00
parent 43073b1125
commit 04b1ac2b77
3 changed files with 10 additions and 5 deletions

View File

@ -110,7 +110,6 @@ var SimpleAutocomplete = function(input, dataLoader, params)
SimpleAutocomplete.prototype.init = function() SimpleAutocomplete.prototype.init = function()
{ {
var e = this.input; var e = this.input;
e.autocomplete = 'off';
var l = SimpleAutocomplete.SimpleAutocompletes; var l = SimpleAutocomplete.SimpleAutocompletes;
this.id = this.input.id + l.length; this.id = this.input.id + l.length;
l.push(this); l.push(this);
@ -131,6 +130,13 @@ SimpleAutocomplete.prototype.init = function()
e.SimpleAutocomplete_input = this; e.SimpleAutocomplete_input = this;
t.SimpleAutocomplete_layer = this; t.SimpleAutocomplete_layer = this;
// Set autocomplete to off and reenable before unload
if (typeof e.autocomplete !== 'undefined')
{
e.autocomplete = 'off';
addListener(window, 'beforeunload', function() { e.autocomplete = 'on'; });
}
// Set event listeners // Set event listeners
var self = this; var self = this;
this.addRmListener('keydown', function(ev) { return self.onKeyDown(ev); }); this.addRmListener('keydown', function(ev) { return self.onKeyDown(ev); });
@ -138,7 +144,6 @@ SimpleAutocomplete.prototype.init = function()
this.addRmListener('change', function() { return self.onChange(); }); this.addRmListener('change', function() { return self.onChange(); });
this.addRmListener('focus', function() { return self.onInputFocus(); }); this.addRmListener('focus', function() { return self.onInputFocus(); });
this.addRmListener('blur', function() { return self.onInputBlur(); }); this.addRmListener('blur', function() { return self.onInputBlur(); });
addListener(window, 'beforeunload', function() { e.autocomplete = 'on'; });
addListener(t, 'mousedown', function(ev) { return self.cancelBubbleOnHint(ev); }); addListener(t, 'mousedown', function(ev) { return self.cancelBubbleOnHint(ev); });
this.onChange(); this.onChange();
}; };
@ -238,7 +243,7 @@ SimpleAutocomplete.prototype.makeItem = function(index, item)
d.innerHTML = item[0]; d.innerHTML = item[0];
var self = this; var self = this;
addListener(d, 'mouseover', function() { return self.onItemMouseOver(this); }); addListener(d, 'mouseover', function() { return self.onItemMouseOver(this); });
addListener(d, 'mousedown', function(ev) { return self.onItemClick(ev, this); }); addListener(d, 'click', function(ev) { return self.onItemClick(ev, this); });
return d; return d;
}; };

2
hinter.min.js vendored

File diff suppressed because one or more lines are too long

View File

@ -4,7 +4,7 @@
use strict; use strict;
my $output = 'hinter.min.js'; my $output = 'hinter.min.js';
my %whitelist = map { $_ => 1 } qw(input remove replaceItems hide onChange); my %whitelist = map { $_ => 1 } qw(input remove replaceItems show hide onChange selectItem);
my %var = (); my %var = ();
my @names = 'a'..'ba'; my @names = 'a'..'ba';