2012-08-27 20 views
10

Tengo gráficos Highcharts. Cuando creo mi página de muestro gráficos vacíos (No me marco atributo de datos y sólo hay títulos de gráficos, dentro de ellos está vacía.) Puedo recuperar los datos desde el servidor de forma asíncrona y llamoHighcharts Cómo mostrar la animación de carga en Set Data

setData()

funcionan en la devolución de llamada. Sin embargo, el usuario ve una página vacía y quiero mostrar una imagen de carga para ellos. Esto: http://api.highcharts.com/highcharts#loading no funciona para mí.

¿Alguna idea?

Respuesta

15

lo hice funciona como se explica en determinada dirección URL:

function updateGraphic(url, chartName) { 
    chartName.showLoading(); 
    $.getJSON(url, function(data){ 
     chartName.series[0].setData(data); 
     chartName.hideLoading(); 
    }); 
} 
+0

Esto funciona al actualizar el gráfico. Pero para mí no funciona en el arranque. – saitam

4

Se trata de un simple trozo Yo siempre uso para mostrar la carga.

digamos que este es nuestro contenedor

<div id='container'> 
    <img id="spinner" src="/assets/chart_loader.gif"/> 
</div> 

Y esta es la pieza de Ajax, que se encarga de mostrar cuando el getJSON comienza para el gráfico y se esconden cuando se detiene.

$(document).ajaxStart -> 
    $("#spinner").show() 

$(document).ajaxComplete -> 
    $("#spinner").hide() 
0

Se puede definir globalmente para cada página utilizando este plugin JQuery Block UI

y su uso es

jQuery(document).ready(function ($) { 
     $.ajaxSetup({ cache: false }); 
     $(document).ajaxStart(function() { 
     $('body').block({ 
      message: '<h3><img alt="" class="GifIcon" src="Images/319.gif" />Please wait Data is Loading From Server ...... </h3>' 
     }); 
    }); 
    $(document).ajaxStop(function() { 
     $('body').unblock(); 
    }); 

}); 
11

"Cargando .." palabra parece demasiado aficionado. Use ese truco en su lugar

var chart = new Highcharts.Chart(options); 
chart.showLoading('<img src="/images/spinner.gif">'); 

$.getJSON(url, function(data){ 
     //load data to chart 
     chart.hideLoading(); 
}); 
+1

Esto funciona para mí. ¿Por qué el voto hacia abajo? Además, el interlocutor aceptó su propia respuesta que no es "animación" en absoluto. –

Cuestiones relacionadas