https://www.mediawiki.org/wiki/Special:Code/MediaWiki/114360
Revision: 114360
Author: jdlrobson
Date: 2012-03-21 11:42:34 +0000 (Wed, 21 Mar 2012)
Log Message:
-----------
hide search results on blur event when search box empty
remove whichElement code which has no effect at
this current time
Modified Paths:
--------------
trunk/extensions/MobileFrontend/javascripts/beta_opensearch.js
Modified: trunk/extensions/MobileFrontend/javascripts/beta_opensearch.js
===================================================================
--- trunk/extensions/MobileFrontend/javascripts/beta_opensearch.js
2012-03-21 11:41:50 UTC (rev 114359)
+++ trunk/extensions/MobileFrontend/javascripts/beta_opensearch.js
2012-03-21 11:42:34 UTC (rev 114360)
@@ -13,10 +13,6 @@
u = MobileFrontend.utils;
apiUrl = MobileFrontend.setting( 'scriptPath' ) + apiUrl;
-
- function hideResults() {
- results.style.display = 'none';
- }
viewportmeta = u( 'meta[name="viewport"]' )
if ( viewportmeta && viewportmeta[0] ) {
@@ -71,56 +67,25 @@
}
}
- function whichElement( e ) {
- var targ;
- if ( !e ) {
- e = window.event;
- }
- if ( e.target ) {
- targ = e.target;
- } else if ( e.srcElement ) {
- targ = e.srcElement;
- }
-
- if ( targ.nodeType === 3 ) {
- targ = targ.parentNode;
- }
-
- e.cancelBubble = true;
- e.stopPropagation();
- if ( targ.className === "suggestion-result" ||
- targ.className === "search-result-item" ||
- targ.className === "suggestions-result" ||
- targ.className === "sq-val-update" ||
- targ.id === 'results' ||
- targ.id === 'search' ||
- targ.id === 'searchbox' ||
- targ.id === 'sq' ||
- targ.id === 'placeholder' ||
- targ.id === 'clearsearch' ||
- targ.tagName === 'BODY' ) {
- if ( targ.id === 'clearsearch' && results ) {
- results.innerHTML = '';
- }
- } else {
- hideResults();
- }
- }
-
var performSearch = function(ev) {
ev.preventDefault();
clearTimeout( timer );
term = search.value;
- if ( term.length < 1 ) {
- results.innerHTML = '';
- } else {
+ if ( term.length > 1 ) {
term = encodeURIComponent( term );
timer = setTimeout( function () { searchApi( term ); },
typingDelay );
}
};
u( search ).bind( 'keyup', performSearch );
u( document.getElementById( 'searchForm' ) ).bind( 'submit',
performSearch );
- u( search ).bind( 'blur', performSearch ); // for opera mini etc
+ function blurSearch(ev) {
+ if( search.value.length === 0) {
+ removeResults();
+ } else {
+ performSearch(ev); // for opera mini etc
+ }
+ }
+ u( search ).bind( 'blur', blurSearch );
function searchApi( term ) {
u( search ).addClass( 'searching' );
@@ -208,6 +173,7 @@
function clearSearchBox( event ) {
search.value = '';
+ results.innerHTML = '';
event.preventDefault();
}
@@ -219,11 +185,6 @@
}
function init() {
- var results = document.getElementById( 'results' );
- results.onmousedown = whichElement;
- document.body.onmousedown = whichElement;
- document.body.ontouchstart = whichElement;
- results.ontouchstart = whichElement;
}
init();
initClearSearch();
_______________________________________________
MediaWiki-CVS mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-cvs