【发布时间】:2016-11-30 09:48:52
【问题描述】:
An answer 到 this question 可以将特定对象上的切换类保存到本地存储,这很有帮助,但不完全是我需要的。当没有很多解释性的 cmets 时,我并不擅长修改代码。
这是答主的JS:
if (typeof(localStorage) == 'undefined') {
document.getElementById("result").innerHTML =
'Your browser does not support HTML5 localStorage. Try upgrading.';
} else {
$(".item").each(function(i, el) {
if (localStorage['fav' + i] == 'favorites') {
$(this).addClass('favorites');
}
});
}
$(document).ready(function() {
$('.btn').on('click', function() {
var $item = $(this).closest('.item');
var index = $('.item').index($item);
//$(".item").removeClass('favorites');
//localStorage.removeItem('background');
$item.toggleClass('favorites');
if ($item.hasClass('favorites')) {
console.log(index)
localStorage.setItem('fav' + index, 'favorites');
} else {
localStorage.removeItem('fav' + index);
}
});
});
但我希望有一种方法可以让按钮保存对页面所做的任何更改。我正在开发一个交互性很强的页面,并且具有内容可编辑的元素、可扩展的菜单和可突出显示的段落。我希望有一个保存按钮来保存已编辑的文本、打开的菜单以及突出显示的段落。
有没有办法做到这一点,而不必为每个交互元素编辑 jquery?
【问题讨论】:
-
在帮助解决了那个正则表达式问题后,我点击了您的个人资料,并认为我也可以帮助您解决这个问题。如果没有真正看到页面是什么样子以及它是如何被修改的,就很难回答这个问题。您不使用 REST API 之类的服务器端服务将数据保存到数据库中是否有特殊原因?是否需要本地存储?
-
好吧,我正在为一个最终将链接到服务器的网站制作原型(专业服务会为我做这件事,我不知道任何服务器侧代码)。为了演示的目的,我希望我可以有一个按钮,可以让我向人们展示“保存你的位置”功能是如何工作的。如果太难,我可能只需要等到我可以在服务器端完成。
-
@Cleo 通过任何更改,您是指您的 JS 变量吗?或者是其他东西?因为如果是 JS 变量,解决方法很容易做也很容易理解……
标签: javascript jquery html css local-storage