Ich versuche, zwischen zwei Funktionen zu wechseln, wenn ein "Gefällt mir" -Knopf angeklickt wird.zwischen zwei Funktionen umschalten - jquery
<div class="like">
<div class="count"><%= post.num_likes %> </div>
<div class="icon" id="like"><i class="icon-thumbs-up-alt"></i></div>
</div>
jetzt habe ich:
$(".like").click(function(event){
event.stopPropagation();
$("i", this).toggleClass("icon-thumbs-up-alt").toggleClass("icon icon-thumbs-up");
likePost(TestCanvas, $(this).prev('div').find('.hideThis').text());
});
likePost (canvasID, postID) nimmt Parameter und interagiert mit einer API Wenn ich wieder auf .like klicken, ich möchte unlikePost() aufzurufen.
Gibt es eine einfache Möglichkeit, zwischen likePost() und im Gegensatz zuPost() zu wechseln, wenn .like angeklickt wird?
Ive versucht:
$('.like').toggle(function() {
alert('First handler for .toggle() called.');
likePost(TestCanvas, $(this).prev('div').find('.hideThis').text());
}, function() {
alert('Second handler for .toggle() called.');
unlikePost(TestCanvas, $(this).prev('div').find('.hideThis').text());
});
seine nicht funktioniert, wie ich es aber gedacht würde. Scheint beim Laden der Seite statt beim Klicken auf .like ausgeführt zu werden.
Nun, da Sie eine Klasse anwenden, Sie für die Existenz dieser Klasse mit der 'hasClass' Methode überprüfen können. – crush
die '.toggle (fn1, fn2)' Methode ist veraltet seit jQuery 1.9 – Alnitak
Dank dir auch Freund für das gleiche Questing fragen, dass ich seit langem gesucht habe;) – NullPointer