The branch, master has been updated via 9f476c85a819af1cda160256a443d31c35f9951d (commit) from 84cc7837f5da69c588f7503da0acc9512ff29619 (commit)
- Log ----------------------------------------------------------------- commit 9f476c85a819af1cda160256a443d31c35f9951d Author: Piotr Przybylski piotrprz@gmail.com Date: Thu Aug 18 14:19:51 2011 +0200
Server status: faster perceived page loading Tab initialization is moved to the moment when tab is selected. All other tabs are initialized after tabs are displayed
-----------------------------------------------------------------------
Summary of changes: js/server_status.js | 22 ++++++++++++++++++---- 1 files changed, 18 insertions(+), 4 deletions(-)
diff --git a/js/server_status.js b/js/server_status.js index bcb25b8..1d892e2 100644 --- a/js/server_status.js +++ b/js/server_status.js @@ -110,7 +110,13 @@ $(function() { cookie: { name: 'pma_serverStatusTabs', expires: 1 }, show: function(event, ui) { // Fixes line break in the menu bar when the page overflows and scrollbar appears - menuResize(); + menuResize(); + + // Initialize selected tab + if (!$(ui.tab.hash).data('init-done')) { + initTab($(ui.tab.hash), null); + } + // Load Server status monitor if (ui.tab.hash == '#statustabs_charting' && ! monitorLoaded) { $('div#statustabs_charting').append( //PMA_messages['strLoadingMonitor'] + ' ' + @@ -143,8 +149,12 @@ $(function() {
// Initialize each tab $('div.ui-tabs-panel').each(function() { - initTab($(this), null); - tabStatus[$(this).attr('id')] = 'static'; + var $tab = $(this); + tabStatus[$tab.attr('id')] = 'static'; + // Initialize tabs after browser catches up with previous changes and displays tabs + setTimeout(function() { + initTab($tab, null); + }, 0.5); });
// Handles refresh rate changing @@ -362,7 +372,7 @@ $(function() { });
$('#filterText').keyup(function(e) { - word = $(this).val().replace(/_/g, ' '); + var word = $(this).val().replace(/_/g, ' ');
if (word.length == 0) { textFilter = null; @@ -389,6 +399,10 @@ $(function() {
/* Adjust DOM / Add handlers to the tabs */ function initTab(tab, data) { + if ($(tab).data('init-done') && !data) { + return; + } + $(tab).data('init-done', true); switch(tab.attr('id')) { case 'statustabs_traffic': if (data != null) {
hooks/post-receive