Как стать автором
Обновить

Мои закладки в Локальном Хранилище Или Ещё один способ использования html5

Некоторое время назад мне в голову от скуки пришла идея. Почему бы не сделать некоторое подобие Моего избранного Из [В]контакте. Так сказать Мои закладки для сайта. Небольшой кодик. Который будет сохранять title и url страницы в локальное хранилище браузера. Почему не cookie? Ну наверное потому что мало места и грузит сервер. Те кто их использовал поймут что не так они и хороши. Другое дело Локальное Хранилище браузера. Которое хранит большущее количество данных. Ну вам это наврятли интересно настолько насколько было бы интересно посмотреть на сам код.
 /*Сохранение url title страницы*/
	
function save(){
	
localdata=localStorage.getItem('LF');
	
if(!localdata){
	
MyUrl=location.href;
	
MyTitle=document.title;
	
var newlocaldata='';
	
newlocaldata+=MyUrl;
	
newlocaldata+='^';
	
newlocaldata+=MyTitle;
	
localStorage.setItem('LF',newlocaldata)}
	
else{
	
MyUrl=location.href;
	
MyTitle=document.title;
	
newlocaldata=localdata;
    
newlocaldata+='^';
   
 newlocaldata+=MyUrl;
	
newlocaldata+='^';
	
newlocaldata+=MyTitle;
	
localStorage.setItem('LF',newlocaldata)};

    }

/*--------*/

/*Вывод*/

function remlocaldata(){

	localdata=localStorage.getItem('LF');
	
data=localdata.split('^');
	
num=data.length;n=0;
	
while(n<num-1){
	
url=data[n];
	
n++;
	
title=data[n];
	
html='<div id="aclick'+n+'" class='localdataelement'><a href="'+url+'">'+title+'</a> <div onclick="datadelt('+n+')"><br />Удалить '+title+'<br /> <br /></div>
</div>';
	
document.write(html);//Если это сработает после того как страница сгенерируеться будет плохо. Советую заменить на innerHTML
	
n++;}document.write('<div onclick="localStorage.clear();">Удаллить всё.</div>');//Вообще замените все document.wraite на своём сайте на innerHTML!
	
}

/*--------*/

/*Удаление*/
	
function datadelt(d){
	
localdata=localStorage.getItem('LF');
	
data=localdata.split('^');
	
data.splice( d-1,2);
	
newlocaldata=data.join('^');
	
localStorage.setItem('LF',newlocaldata);
	
a='aclick'+d+'';document.getElementById(a).parentNode.removeChild(document.getElementById(a));
	
}

/*-----------*/


save();
remlocaldata();
Код более чем рабочий. Но не обладает встроенными стилями дабы вы сами могли сделать всё что вам вздумается.
Ну и чуть чуть о устройстве кода!
Создание: Сама идея такова что мы в начале создаём строку с нужными нам данными при этом проверяя есть ли информация в локальном хранилище по нужному адресу или нет. Есть? Берём оттуда всю информацию и добавляем к ней то что мы хотим видеть в будущем. Нет? Ну тут уж просто создаём нужный нам элемент — объект.
Вывод: Тут уже чуть больше рутины. Мы создаём массив с полученной информацией. И с данными из него создаём по очереди нужное нам количество html тегов. И в конце добавляем возможность удалить всё.
Удаление: Ну тут просто. Берём все данные. Делаем массив. И удаляем то что не нужно.
Скрипт не назвать универсальным. Но может именно вы найдёте ему новое применение?
Всем спасибо за внимание. Надеюсь красть пост вы не намерены!
Теги:
Хабы:
Данная статья не подлежит комментированию, поскольку её автор ещё не является полноправным участником сообщества. Вы сможете связаться с автором только после того, как он получит приглашение от кого-либо из участников сообщества. До этого момента его username будет скрыт псевдонимом.