Je crée un style Facebook "Qu'est-ce que tu penses?" bascule la zone de saisie. La façon dont je l'approche est une combinaison de clic et de flou. En cliquant sur une zone de saisie, le div conteneur sera automatiquement développé et affichera un certain nombre d'éléments. Cela fonctionne bien. Cependant, j'ai eu du mal à faire en sorte que lorsque le focus quitte tous les éléments enfants du conteneur div, il retourne l'état bascule (div plus petit et éléments enfants cachés).jQuery: Comment appliquer .blur à * chaque * élément enfant d'un div, plutôt que * any * élément enfant d'une div?
Si je viens de faire « # conteneur div> * », pour le .blur, le .blur sera déclenché tout moment tout élément enfant perd le focus, plutôt que lorsque tous les éléments de l'enfant perd le focus (l'accent est mis plus sur aucun élément enfant du conteneur div). J'ai essayé de changer $ ("# create-community> *"). Flou à $ ("*") .not ("# create-community> *"). Flou, mais cela ne fonctionne pas non plus.
Des suggestions?
$("#create > *").click(function() {
$(".expand").addClass("expand-expand");
$(".expand-expand").removeClass("expand");
$("#create").addClass("create-expand");
$("#create").removeClass("create");
$(".write-title").addClass("write-title-expand");
$(".write-title-expand").removeClass("write-title");
$(".summary").addClass("summary-expand");
$(".summary-expand").removeClass("summary");
$(".input").addClass("input-expand");
$(".input-expand").removeClass("input");
$(".submit").addClass("submit-expand");
$(".submit-expand").removeClass("submit");
$(".name").attr("value", "");
});
$("#create > *").blur(function() {
$(".expand-expand").addClass("expand");
$(".expand").removeClass("expand-expand");
$("#create").addClass("create");
$("#create").removeClass("create-expand");
$(".write-title-expand").addClass("write-title");
$(".write-title").removeClass("write-title-expand");
$(".summary-expand").addClass("summary");
$(".summary").removeClass("summary-expand");
$(".input-expand").addClass("input");
$(".input").removeClass("input-expand");
$(".submit-expand").addClass("submit");
$(".submit").removeClass("submit-expand");
$("#name").attr("value", "write something...");
});