2015-11-03 3 views
1

Например, я открыл документ с именем «Doc1» с моего диска. Если я переименую его в «Doc2» из проводника, открывшийся документ на другой вкладке перезагрузится и изменит его имя. Я хочу точно знать, как Google это делает? Я где-то узнал, что для этого используется хранилище Html5.Как Google отражает изменения (например, переименование файлов) на одной вкладке на другую вкладку на диске?

enter image description here

enter image description here

enter image description here

+0

Вероятно, это серверная сторона. Когда вы обновляете 'страницу A', запрос отправляется на сервер, который затем обновляет изменения на всех ваших открытых страницах, в том числе« Страница B » – Cristy

+0

, вероятно, веб-сокеты или их полифония – Lucius

+0

@LiYinKong отслеживает сетевые журналы, но не делает 't показать использование websockets – Manu

ответ

4

Вы определенно можете осуществить это с помощью HTML5 LocalStorage. Всякий раз, когда скрипт на любой из открытых вкладок добавляет или изменяет сохраненный там элемент, другие вкладки получают событие «хранения» (или «onstorage» для IE).

Если вы даете каждому документу уникальный идентификатор и сохраняете идентификатор сопоставления словаря-> имя файла для всех открытых файлов, вы можете изменить эти имена с любой вкладки. Или вы можете просто сохранить массив файлов, нуждающихся в обновлении, и обновить вкладки (включая их обновленное «имя файла») с сервера.

+0

Спасибо @ Пол-Ян за ответ. Есть ли у вас другие интересные примеры использования хранилища Html5. – Manu