/ / Jak ustawić plik jquery cookie, aby przestał powtarzać wyskakujące okienka na użytkownika - jquery, ruby-rails, ruby-rails-3, ciasteczka, ruby-rails-4

Jak ustawić plik jquery, aby przestał powtarzać wyskakujące okienka na użytkownika - jquery, ruby-rails, ruby-rails-3, ciasteczka, ruby-rails-4

Tak więc, jeśli pójdziesz do mojego serwer tymczasowy zobaczysz mini samouczek, który został dodany za pomocą to narzędzie.

Jeśli jednak klikniesz na rejestrację lub jakąkolwiek inną stronę w tej sprawie, tutorial będzie nadal pojawiał się. Jak mogę utworzyć plik cookie, aby wyświetlał się tylko raz dla każdego użytkownika?

Próbowałem plik cookie jquery, choć nie potrafił wymyślić, jak to działa.

Oto co zrobiłem:

1. Copied jquery.cookie.js into assets/javascript/jquery.cookie.js
2. Created a new file called cookie.js
3. Added this arbitrary code: $.cookie(guider, true);

Mając to na uwadze, nie wiem, jaki kod mam umieścić w pliku cookie.js, aby dodać plik cookie do narzędzia guiders.js, aby guidery wyświetlały się tylko raz.

Jak sprawić, by działało tak, jak powinno? Wyświetlaj tylko raz dla każdego użytkownika.

Kod Guiders.js:

guiders.createGuider({
buttons: [{ name: "Next" }]
, description: "Follow this short 7 tip tutorial and learn how to get the most out of Leap. It will only take a few minutes :)"
, id: "first"
, next: "second"
, overlay: true
, title: "Welcome to LeapFM! Mini Tutorial:"
}).show();

guiders.createGuider({
attachTo: ".title"
, buttons: [{name: "Close"}, {name: "Next"}]
, description: "The number of leaps a song gets determines how high it will rank on the charts. A song with more leaps will rank higher than a song with less leaps."
, id: "second"
, next: "third"
, position: 7
, title: "Tip 1. Ranking system:"
});

guiders.createGuider({
attachTo: ".arrow"
, buttons: [{name: "Close"}, {name: "Next"}]
, description: "To add a leap to a song simply hit the up arrow. You must be logged in to add 1 leap. Users can only add 1 leap per song."
, id: "third"
, next: "fourth"
, position: 2
, title: "Tip 2. Adding leaps:"
});

guiders.createGuider({
attachTo: ".title"
, buttons: [{name: "Close"}, {name: "Next"}]
, description: "You can view the songs genres within the parentheses"
, id: "fourth"
, next: "fifth"
, position: 6
, title: "Tip 3. Genres:"
});


guiders.createGuider({
attachTo: ".song"
, buttons: [{name: "Close"}, {name: "Next"}]
, description: "By clicking the song title you can listen to the song, comment on it and share it with the social media buttons. But dont"t do it yet, lets finish the tutorial first!"
, id: "fifth"
, next: "sixth"
, position: 7
, title: "Tip 4. Listening to songs:"
});

guiders.createGuider({
attachTo: "#query"
, buttons: [{name: "Close"}, {name: "Next"}]
, description: "You can search songs by genre, title or artist."
, id: "sixth"
, next: "seventh"
, position: 5
, title: "Tip 5. Search:"
});

guiders.createGuider({
attachTo: ".left"
, buttons: [{name: "Close"}, {name: "Next"}]
, description: "You must be logged in to submit a song. LeapFM only accepts YouTube urls so your song must first be on YouTube."
, id: "seventh"
, next: "eigth"
, position: 7
, title: "Tip 6. Submit a song:"
});

guiders.createGuider({
attachTo: ".newsongs"
, buttons: [{name: "Close"}, {name: "Next"}]
, description: "By clicking "New songs" you will be able to view the songs from upload date (newest to oldest). Where as the default page displays songs by leap/rank."
, id: "eigth"
, next: "ninth"
, position: 7
, title: "Tip 7. Newest to oldest:"
});

guiders.createGuider({
attachTo: ".signup"
, buttons: [{name: "Close"}]
, description: "Sign up and start participating :)"
, id: "ninth"
, next: "tenth"
, position: 5
, title: "Call to action!"
});

Odpowiedzi:

0 dla odpowiedzi № 1

Lokalna pamięć jest Twoim przyjacielem, a dla przeglądarek nieobsługujących możesz korzystać z polyfill z MDN :

if ( ! localStorage.getItem("visited") ) {
localStorage.setItem("visited", true);
runMyTutorial();
}