diff options
| author | Suhaib Khan <suhebjerk@gmail.com> | 2014-03-10 19:06:42 +0530 |
|---|---|---|
| committer | Cesar G <prototech91@gmail.com> | 2014-04-23 09:11:40 -0700 |
| commit | a60d9a7f86653cbb4c37a424e5fcc55c2318deda (patch) | |
| tree | 3c60dff355271fe0103368325720ee2c2973dc36 /phpBB/assets/javascript | |
| parent | 6ef4e4e7907b1ab4c50b53e62b50c014813594f7 (diff) | |
| download | forums-a60d9a7f86653cbb4c37a424e5fcc55c2318deda.tar forums-a60d9a7f86653cbb4c37a424e5fcc55c2318deda.tar.gz forums-a60d9a7f86653cbb4c37a424e5fcc55c2318deda.tar.bz2 forums-a60d9a7f86653cbb4c37a424e5fcc55c2318deda.tar.xz forums-a60d9a7f86653cbb4c37a424e5fcc55c2318deda.zip | |
[ticket/10737] Adding delayed keyup and removing target_blank.
PHPBB3-10737
Diffstat (limited to 'phpBB/assets/javascript')
| -rw-r--r-- | phpBB/assets/javascript/core.js | 63 |
1 files changed, 37 insertions, 26 deletions
diff --git a/phpBB/assets/javascript/core.js b/phpBB/assets/javascript/core.js index e5f4bd824d..6034f81a6e 100644 --- a/phpBB/assets/javascript/core.js +++ b/phpBB/assets/javascript/core.js @@ -513,37 +513,48 @@ phpbb.timezonePreselectSelect = function(forceSelector) { }; // Listen live search box events +var delay = (function(){ + var timer = 0; + return function(callback, ms){ + clearTimeout (timer); + timer = setTimeout(callback, ms); + }; +})(); + $('.live-search-input').keyup(function() { var str = this.value; - if (str.length < 3) { - return; - } - var link, name; - var clone = $("#user-search-row-tpl").clone(); - $("#livesearch").html(""); - clone.appendTo("#livesearch"); - $.ajax({ - url:'memberlist.php?mode=livesearch&'+"&q="+str, - success:function(result) { - $.each(result, function(idx, elem) { - link = "memberlist.php?mode=viewprofile&u=" + elem.id; - name = elem.name; - clone = $("#user-search-row-tpl").clone(); - clone.find(".user-search-link").attr("href", link); - clone.find(".user-search-name").html(name); - clone.attr("style", ""); - clone.appendTo("#livesearch"); - }); + delay(function(){ + if (str.length < 3) { + return; } - }); + var link, name; + var clone = $("#user-search-row-tpl").clone(); + $("#livesearch").html(""); + clone.appendTo("#livesearch"); + $.ajax({ + url:'memberlist.php?mode=livesearch&'+"&q="+str, + success:function(result) { + $.each(result, function(idx, elem) { + link = "memberlist.php?mode=viewprofile&u=" + elem.id; + name = elem.name; + clone = $("#user-search-row-tpl").clone(); + clone.find(".user-search-link").attr("href", link); + clone.find(".user-search-name").html(name); + clone.attr("style", ""); + clone.appendTo("#livesearch"); + }); + } + }); + }, 2000 ); }); -$('.live-search-input').blur(function() { - setTimeout(function () { - var clone = $("#user-search-row-tpl").clone(); - $("#livesearch").html(""); - clone.appendTo("#livesearch"); - }, 500); +$(document).click(function(event) { + var target = $( event.target ); + if(!target.is("#livesearch, #livesearch *, .live-search-input")) { + var clone = $("#user-search-row-tpl").clone(); + $("#livesearch").html(""); + clone.appendTo("#livesearch"); + } }); // Toggle notification list |
