Proszę o pomoc, możecie mi powiedzieć co mam nie tak w poniższym kodzie.
Przy każdym divie pokazują się strzałki.
Jak kliknę raz, przeskakuje div w dół, jak kliknę drugi raz tak jakby skrypt leciał dwa razy.... i tak potem 3,4,5,6,
$(document).ready(function(){ var petID=''; var itemlist = $('#familiar_items'); var len=$(itemlist).children().length; $("#familiar_items div").click(function(){ selected= $(this).index(); petID= $(this).attr("id"); $("#familiar_items div").css('border-color', 'lightskyblue'); $(this).css('border-color', 'lightgreen'); console.log($(this).index()); $("#up_" + petID).click(function(e){ e.preventDefault(); if(selected > 0){ jQuery($(itemlist).children().eq(selected-1)).before(jQuery($(itemlist).children().eq(selected))); // selected=selected-1; selected= $("#familiar_items").index(); console.log(itemlist.children()); } e.preventDefault(); }); $("#down_" + petID).click(function(e){ e.preventDefault(); if(selected < len) { jQuery($(itemlist).children().eq(selected+1)).after(jQuery($(itemlist).children().eq(selected))); // selected=selected+1; selected= $("#familiar_items").index(); console.log(itemlist.children()); } }); }); });
Po stronie PHP kod wygląda tak
foreach ($acc_settings_file_json->$familiarData as $item) { if ($item->petUnlocked == true) { $pet_Id = $item->petId; // obrazek echo "<a id=\"up_" . $pet_Id . "\"><i class=\"fas fa-arrow-up\" style=\"color:darkgreen\"></i></a><br>"; echo "<a id=\"down_" . $pet_Id . "\"><i class=\"fas fa-arrow-down\" style=\"color:darkgreen\"></i></a>"; // echo $pet_Id; // echo $familiars_data, " - ", $familiars; } }