Voila j'ai un petit soucis avec mon JS. Je souhaite déclencher une fonction au clic sur des div qui comportent une certaine class CSS.
L’événement fonctionne très bien lors du premier clic puis après plus rien impossible de re-déclencher le JS. Je pensais d'abord que le clic était mal ciblé mais après plusieurs modification dans tous les sens je me suis aperçu que non. J'ai placé un console.log qui ne ressort même pas lors du second clic
Je met mon code la en espérant avoir un peu d'aide sur le coup.
HTML
<div class="row">
<section id="alpha_wrapper" class="col-sm-10 fullpage">
<h1>Titre</h1>
<div id="body-wrapper">
<div class="row card-list">
<div id="1" class="col-sm-3 card-wrapper">
<div id="1" class="card">
<div class="card-background">
<img src="">
</div>
<div class="card-title">
Elmt 1
</div>
</div>
</div>
<div id="2" class="col-sm-3 card-wrapper">
<div id="2" class="card">
<div class="card-background">
<img src="">
</div>
<div class="card-title">
Elmt 2
</div>
</div>
</div>
<div id="3" class="col-sm-3 card-wrapper">
<div id="3" class="card">
<div class="card-background">
<img src="">
</div>
<div class="card-title">
Elmt 3
</div>
</div>
</div>
<div id="4" class="col-sm-3 card-wrapper">
<div id="4" class="card">
<div class="card-background">
<img src="">
</div>
<div class="card-title">
Elmt 4
</div>
</div>
</div>
</div>
</div>
</section>
<section id="beta_wrapper">
</section>
</div>
Et le JS
<script>
$(function(){
//Variable global
oAlphaWrapper = $("#alpha_wrapper");
oBetaWrapper = $("#beta_wrapper");
oBodyWrapper = $("#body-wrapper");
$(".card").on("click", function (){
console.log(oAlphaWrapper.hasClass("fullpage"));
if( oAlphaWrapper.hasClass("fullpage") == true ){
moveAllBody( $(this) );
oAlphaWrapper.removeClass("fullpage");
}
else{
console.log('Enfin !');
addBodyDashboard( $(this) );
}
});
});
var moveAllBody = function( oCard ){
var oSelector = $(".card-wrapper");
oBodyWrapper.fadeOut().filter( oSelector.removeClass("col-sm-3") ).filter( oSelector.addClass("col-sm-6") );
oContentRefactor = oBodyWrapper.html();
//
oAlphaWrapper.removeClass("col-sm-10").addClass("col-sm-8");
//
oBetaWrapper.html("<div class='light-title'><h6>Petit titre</h6></div>" + oContentRefactor).addClass("col-sm-2").fadeIn();
oBodyWrapper.empty();
addBodyDashboard(oCard);
oBodyWrapper.fadeIn();
};
var addBodyDashboard = function( oCard ){
console.log('add');
oBodyWrapper.append("<div>L\'id de la case est " + oCard.attr("id") +"</div>").fadeIn();
};
</script>
Merci