| 
 Дык это ж закоммеченный блок, я уже понял что это не решение. | 
| 
 Подскажите плз ,как же правильно вывести  данные? | 
| 
 писалось на коленке, может не работать. ну, я проверил в консоли, на сайте JQ, работает :) только хоть с JQ, хоть без неё, для старых браузеров нужно искать имплементацию JSON.stringify на JS. сохраняем так : http://api.jquery.com/jQuery.map/ 
var postIds, prefix = "post_id_", postsIds_key = "post_ids";
postIds = $.map(data, function (post) {
    var stringified = JSON.stringify(post);
    localStorage.setItem(prefix + post.id, stringified);
    return post.id;
});
postIds = JSON.stringify(postIds); // в принципе, можно было и join'ом
localStorage.setItem(postsIds_key, postIds);
достаем так: 
var postIds, posts;
// prefix определён выше.
// postsIds_key тоже определён выше.
postIds = localStorage.getItem(postsIds_key);
if (postIds) {
    postIds = JSON.parse(postIds);
    posts = $.map(postIds, function (postId) {
        var post;
        post = localStorage.getItem(prefix + postId);
        post = JSON.parse(post);
        return post;
    });
} else { /* нет сохранённых ID'шников */ }
 | 
| 
 Хм...не совсем понятна эта строка: var stringified = JSON.stringify(post); Как мне быть в моем случае, ведь у меня как видели идет заполнение из JSON файла, содержание которог оя кинул...или мне достаточно попробовать воспользоватся вашим куском кода, отвечающим за вывод? ЗЫ: попробовал - все равно [object] и андефайнд | 
| 
 Цитата: 
 
{
        "id": 1,
        "title": "Стремящийся наибольший",
        "body": "Поле направлений нейтрализует коллинеарный полином, откуда следует доказываемое равенство.",
        "tags": [
            "тег", "еще тег"
        ]
    }
// стало 
'{"id":1,"title":"Стремящийся наибольший","body":"Поле направлений нейтрализует коллинеарный полином, откуда следует доказываемое равенство.","tags":["тег","еще тег"]}'
Цитата: 
 | 
| 
 Хм...чтото нифига не выходит( Вообще теперь ничего не выводит и не происходит. Код стал таким: 
// JavaScript Document
$(document).ready(function(){
		function isLocalStorageAvailable(){
				try {
					return 'localStorage' in window && window['localStorage'] !== null;
				} catch (e) {
					return false;
				}
			}
		try {
			//localStorage.setItem('foo', 'bar');
		} catch (e) {
			if (e == QUOTA_EXCEEDED_ERR) {
				alert('Локальное хранилище переполнено');
			}
		}
	$.getJSON(
		'json/posts.json',
		function(data){
		var prefix = "post_id", postsIds_key = "post_ids";
	  	$.each(data, function(postIndex, post) {
			localStorage.setItem('post_id'+post['id'], JSON.stringify(post));
			posts += localStorage['post_id'+post['id']];
		})
		var postIds, posts;
		// prefix определён выше.
		// postsIds_key тоже определён выше.
		postIds = localStorage.getItem(postsIds_key);
		if (postIds) {
		    postIds = JSON.parse(postIds);
		    posts = $.map(postIds, function (postId) {
		        var post;
		        post = localStorage.getItem(prefix + postId);
		        post = JSON.parse(post);
		        
		        return post;
		    });
		} else { /* нет сохранённых ID'шников */ }
		alert(post);
		var ololo = $.parseJSON(localStorage['post_id1']);
		//alert(ololo.title);
		alert(posts);
			$.each(posts, function(entryIndex, entry) {
					var post = '<article><header><h3>';
					post += entry['title']+'</h3></header><section><p>';
					post += entry['body']+'</p></section><footer>';
					if(entry['tags']){
						post += '<div id="tags">';
						$.each(entry['tags'], function(tagIndex, tag){
							post += '<span class="label">' + tag + '</span>'
						});
						post += '</div><div class="controls"><a class="btn btn-danger btn-mini">удалить</a></div>';
					}
					post += '</footer></article>';
					$('#posts').append(post);
       		 });
		});
		
});
 | 
| 
 неправильно сохраняете. чтобы работало восстановление, нужно сохранять так же, как я написал. эти 2 куска кода взаимосвязаны | 
| 
 Хм...попробовал весь Ваш код вместо своего. Работает! Теперь тогда таков вопрос..внизу форму добавления поста..и кнопка удаления.. Как реализовать так, чтобы кнопка удаления удаляла именно свой пост? | 
| 
 в атрибут записать ID поста, к которому она относится. дальше просто удалить элемент (пост) со страницы, удалить его из хранилища, и подправить массив postIds : если не исправлять массив postIds, тогда будем иметь в нём мёртвые ID'шники постов. оно Вам надо? 
$delete_button.parents("article").remove(); // для начала удалим пост со страницы.
/*
 можно даже проанимировать
  $delete_button.parents("article").slideUp("slow", function () {
      $(this).remove();
  });
*/
var id = $delete_button.attr(...); // получим тут 3, например - ID поста, к которому относится кнопка. вместо троеточия пишем атрибут, в котором сохранён ID.
localStorage.removeItem(prefix + id); // удалим пост из хранилища
// теперь удалим значение из массива.
// postIds должен быть уже получен ранее.
var index = postIds.indexOf(id);
postIds.splice(index, 1); // удалили
// теперь сохраним измененный массив в хранилище. можно сразу
localStorage.setItem(postsIds_key, postIds);
 | 
| 
 Спасибо! Сейчас попробую....и ещё 2 вопроса...Как сделать так, чтобы  хранилище заполнялось базовыми данными из JSON файла, только первый раз, а потом, если уже заполнено - то не трогало его...и по поводу добавления поста..я не совсем понимаю... Форма добавления состоит из таких полей: 
<input type="text" name="title" class="span4" placeholder="заголовок"><br>
                <textarea name="body" rows="3" class="span4" placeholder="запись"></textarea><br>
                <input type="text" name="tags" class="span4" placeholder="тег, еще тег"><br><br>
                <button type="submit" class="btn btn-primary">добавить</button>
Выходит Записывать в хранилище надо как-то вот так?: 
var post =$('#zagol').val();
var post +=$('#body').val();
var post +=$('#tags').val();
$('.btn-primary').click(function(){
    var stringified = JSON.stringify(post);
    localStorage.setItem(prefix + post.id, stringified);
});
Хотя как же тогда брать пост id... | 
| Часовой пояс GMT +3, время: 17:25. |