diff options
| author | Meik Sievertsen <acydburn@phpbb.com> | 2009-11-06 14:59:02 +0000 |
|---|---|---|
| committer | Meik Sievertsen <acydburn@phpbb.com> | 2009-11-06 14:59:02 +0000 |
| commit | 91721d67fa975913a25f1005acdbc493dc7ac1be (patch) | |
| tree | c830603dc5c7bb938593abea149b0f40b6d96292 /phpBB/styles/prosilver | |
| parent | f0ef35ce6ed4b6e2d17a299a5ee250c32f41ad56 (diff) | |
| download | forums-91721d67fa975913a25f1005acdbc493dc7ac1be.tar forums-91721d67fa975913a25f1005acdbc493dc7ac1be.tar.gz forums-91721d67fa975913a25f1005acdbc493dc7ac1be.tar.bz2 forums-91721d67fa975913a25f1005acdbc493dc7ac1be.tar.xz forums-91721d67fa975913a25f1005acdbc493dc7ac1be.zip | |
simplify the js code a bit and also detect up arrow key for auto completion
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10255 89ea8834-ac86-4346-8a33-228a782c2dd0
Diffstat (limited to 'phpBB/styles/prosilver')
| -rw-r--r-- | phpBB/styles/prosilver/template/forum_fn.js | 45 |
1 files changed, 21 insertions, 24 deletions
diff --git a/phpBB/styles/prosilver/template/forum_fn.js b/phpBB/styles/prosilver/template/forum_fn.js index 153f0c2ae5..e1726430b8 100644 --- a/phpBB/styles/prosilver/template/forum_fn.js +++ b/phpBB/styles/prosilver/template/forum_fn.js @@ -321,16 +321,12 @@ var in_autocomplete = false; var last_key_entered = ''; /** -* Usually used for onkeypress event, to submit a form on enter +* Check event key */ -function submit_default_button(event, selector, class_name) +function phpbb_check_key(event) { - // Add which for key events - if (!event.which && ((event.charCode || event.charCode === 0) ? event.charCode : event.keyCode)) - event.which = event.charCode || event.keyCode; - - // Keycode is array down? - if (event.keyCode && event.keyCode == 40) + // Keycode is array down or up? + if (event.keyCode && (event.keyCode == 40 || event.keyCode == 38)) in_autocomplete = true; // Make sure we are not within an "autocompletion" field @@ -351,6 +347,21 @@ function submit_default_button(event, selector, class_name) return true; } + return false; +} + +/** +* Usually used for onkeypress event, to submit a form on enter +*/ +function submit_default_button(event, selector, class_name) +{ + // Add which for key events + if (!event.which && ((event.charCode || event.charCode === 0) ? event.charCode : event.keyCode)) + event.which = event.charCode || event.keyCode; + + if (phpbb_set_autocomplete(event)) + return true; + var current = selector['parentNode']; // Search parent form element @@ -394,20 +405,8 @@ function apply_onkeypress_event() if (!default_button || default_button.length <= 0) return true; - // Keycode is array down? - if (e.keyCode && e.keyCode == 40) - in_autocomplete = true; - - // Make sure we are not within an "autocompletion" field - if (in_autocomplete) - { - // If return pressed and key changed we reset the autocompletion - if (!last_key_entered || last_key_entered == e.which) - { - in_autocompletion = false; - return true; - } - } + if (phpbb_check_key(e)) + return true; if ((e.which && e.which == 13) || (e.keyCode && e.keyCode == 13)) { @@ -415,8 +414,6 @@ function apply_onkeypress_event() return false; } - last_key_entered = e.which; - return true; }); |
