Escribí un teclado emoji en línea (quizás lo llamé selector de emoji, selector de emoji) en https://www.emojionline.org . Todo funciona bien, pero hay un problema con la optimización de la memoria. Mis datos se almacenan en un archivo json. Tiene 2000 registros (tamaño 600kb). Yo uso ajax para cargarlo en la memoria:
function loadData(){ json = (function () { json = null; $.ajax({ 'async': false, 'global': false, 'url': 'data.json', 'dataType': "json", 'success': function (data) { json = data; } }); return json; })();} Y en el evento listo del documento, lo llamé.
$(document).read(function(e){var data = loadData();});Todo funciona bien en PC, Mac y teléfonos inteligentes con mucha RAM (>= GB). Para dispositivos más débiles, siento que funciona mal. En algún momento, si la conexión es baja, recibí el mensaje "... la página debe recargarse". Entiendo que mantener un archivo json grande en la memoria no es un buen procesamiento. Pero necesito estos datos para su procesamiento. ¿Qué puedo hacer para hacer en esta situación? Solo uso jquery, js, html, css. No se recomiendan lenguajes dinámicos para web, como PHP, Java... en esta situación.
Encontré la solución, pero no sé si esto es bueno o no. Para mí, realmente reduce el tiempo de carga. La solución es: incrustar los datos en un archivo html. Utilice archivos externos siempre haga más solicitudes y reduzca el rendimiento.