2013-03-28 3 views
0

В настоящее время я создаю приложение, с помощью которого вы можете создавать плейлисты песен песен и кэшировать их для использования в автономном режиме. Вы также можете кэшировать свои избранные (массив JSON).HTML5 `favorite` offline caching

Теперь, поскольку избранное кэшируется - кнопка add favorite не работает на стороне клиента. Да, он сохраняет избранное на стороне сервера, но на стороне клиента изменений нет.

Что вы посоветуете мне сделать, чтобы исправить эту проблему? Re: загрузка кеша на всех add favorite нажмите только то, что я могу сделать, или, возможно, есть другой способ, как я мог бы это решить?

Обратите внимание: Я не знаю, как обновить кэш. Мне просто интересно, есть ли лучший способ решить эту проблему.

Спасибо!

ответ

1

Ill Предположим, вам необходимо обновить кэш приложений HTML5 с помощью Javascript, в этом случае данное руководство должно объяснить все, что вам нужно знать: http://www.html5rocks.com/en/tutorials/appcache/beginner/

Что вы можете сделать, это использовать приемник для мониторинга updateready событие на странице нагрузки. Отрывок из приведенного выше руководства:

// Check if a new cache is available on page load. 
window.addEventListener('load', function(e) { 

    window.applicationCache.addEventListener('updateready', function(e) { 
    if (window.applicationCache.status == window.applicationCache.UPDATEREADY) { 
     // Browser downloaded a new app cache. 
     // Swap it in and reload the page to get the new hotness. 
     window.applicationCache.swapCache(); 
     if (confirm('A new version of this site is available. Load it?')) { 
     window.location.reload(); 
     } 
    } else { 
     // Manifest didn't changed. Nothing new to server. 
    } 
    }, false); 

}, false); 

Как вы обновили свой вопрос о том, что вы знаете, как обновить кэш, плохо также обновить свой ответ. Html5 appcache предназначен для загрузки всего, и нет «исправления» для вашей проблемы - так оно и разрабатывается. Теперь, если вы ищете альтернативные решения, вы можете задать новый вопрос.

Смежные вопросы