Je travaille sur une application de compteur qui utilise moustache.js pour créer plusieurs compteurs et mémoriser vos données en utilisant le stockage local. Vous cliquez simplement sur le bouton «+» pour ajouter un nouveau compteur, et appuyez sur le bouton Ajouter pour augmenter le compteur.Application de compteur avec stockage local
Je rencontre plusieurs problèmes: - Lorsque vous ajoutez et que vous avez plusieurs compteurs, ils augmentent tous. - Lorsque je clique sur le bouton de fermeture, les compteurs augmentent également.
Est-il également possible d'entrer un titre via le champ de saisie et de le mémoriser localement?
Toute aide serait grandement appréciée. Si vous avez des solutions, pouvez-vous expliquer?
Voir le violon ici: http://jsfiddle.net/techydude/MSnuE/
Javascript:
$(function() {
var doc = $(document),
CounterContainer = $("#CounterContainer"),
//Container for all Counters
container = $(".counter"),
//Individual Conter Counters
counter = $(".valueCount"),
addBtn = $(".add"),
valueCount = $(".valueCount").html(),
addCounter = $("#create-counter"),
counterTemplate = Mustache.compile($("#counter-template").html());
if (localStorage.counterSave) {
CounterContainer.html(localStorage.counterSave);
}
function save() {
localStorage.counterSave = CounterContainer.html();
}
addCounter.submit(function(e) {
// prevent page from refresing
e.preventDefault();
var value = 5;
makeCounter(value);
save();
});
function makeCounter(value) {
$(counterTemplate({
txt: value
})).appendTo(CounterContainer);
}
CounterContainer.on("click", addBtn, function(valueCount) {
var EachContainer = $("div.valueCount"),
EachContainerValue = $("div.valueCount").html();
EachContainer.html(++EachContainerValue);
console.log("test");
save();
});
doc.on("click", "button.removeCounter", function() {
$(this).parent().remove();
save();
});
});
Juan, je vous remercie beaucoup! J'apprécie l'explication - je suis sur le point d'utiliser la solution frères et soeurs, mais je ne pouvais pas le comprendre. – TechyDude
Je suppose que l'utilisation de titres utilisant des champs de saisie n'est pas la solution. Je pourrais créer un champ de titre avec le bouton +, mais je voulais que ce soit un peu plus simple. – TechyDude
Voir ma réponse, tout fonctionne maintenant @TechyDude –