2012-07-30 2 views
0
  1. Qu'est-ce domEle dans cet exemple? Je peux voir une explication dans jQuery.com - jQuery.each (collection, callback (indexInArray, valueOfElement)), mais est encore difficile à comprendre pour moi ce qui est "valueOfElement"? Quelqu'un peut-il éclaircir un peu ça pour moi?jQuery questions que je suis tombé tout en apprenant (débutant)

    $("button").click(function() { 
        $("div").each(function (index, domEle) { 
        $(domEle).css("backgroundColor", "yellow"); 
        if ($(this).is("#stop")) { 
         $("span").text("Stopped at div index #" + index); 
         return false; 
        } 
        }); 
    }); 
    
  2. si je vais écrire comme ceci: $("input[name='newsletter']").next().text(" is newsletter"); jquery ne trouvera que correspondance exacte et si j'écris comme ceci: $("input[name$='newsletter']").next().text(" is newsletter"); jquery trouverez correspondance exacte et permet de dire que la valeur des « bulletins » aussi?

  3. Auteur utilise ce code:

    $(document).mouseup(function(e) { 
          if($(e.target).parent("a.signin").length==0) { 
           $(".signin").removeClass("menu-open"); 
           $("fieldset#signin_menu").hide(); 
          } 
         });  
    

    pour cacher le menu déroulant à chaque fois que l'utilisateur appuie nulle part ailleurs sur le document. Quelqu'un peut-il commenter sur cette ligne if($(e.target).parent("a.signin").length==0) { car je ne comprends pas complètement ce que nous faisons ici. Article original ici: http://aext.net/2009/08/perfect-sign-in-dropdown-box-likes-twitter-with-jquery/

  4. Un appel de méthode par défaut que je devrais être au courant de?

Dans l'un des tutoriels que j'ai trouvé ce commentaire:

« Enfin, si l'on ne comprend pas de marge dans le CSS, le résultat de l'appel de méthode CSS est automatique, ce qui ne sera pas analyser correctement, donc nous avons besoin de remplacer le texte « auto » avec le numéro 0"

var top = $('#comment').offset().top - parseFloat($('#comment').css('marginTop').replace(/auto/,0)); 

Quelqu'un peut-il commenter ce que je ne comprends pas bien ce qu'il fait ici.

article original ici: http://jqueryfordesigners.com/fixed-floating-elements/

+1

Vous devriez briser votre tableau de questions dans des questions individuelles. Chaque question aura son propre ensemble de réponses. Vous obtiendrez difficilement une réponse décente demandant une grande quantité de questions de cette façon. –

Répondre

0

1.) $ ("div") sélectionnera chaque div sur la page. Chacun va parcourir tous ces divs. Pour chaque itération, domEle sera une référence à la div dont la boucle est en cours d'itération.

2.)^= est ce que vous cherchez,^= recherche tout en commençant par la chaîne donnée. $ = recherche tout se terminant par la chaîne: http://api.jquery.com/category/selectors/

3.) e.target est l'endroit où l'utilisateur a cliqué. .parent ("a.signin"). length == 0 sélectionne le parent s'il s'agit d'une ancre avec la classe .signin. Vérifier une longueur égale à zéro équivaut à demander si quelque chose a été sélectionné. Donc, fondamentalement, si l'utilisateur n'a pas cliqué dans une ancre de connexion de classe, alors faites quelque chose. 4.12 $ ('# comment'). Offset(). Top obtient le décalage du haut de l'élément #comment. parseFloat ($ ('# comment'). css ('margeTop'). replace (/ auto /, 0)) récupère la marge du haut de l'élément. Si la marge est définie sur "auto", elle considère que la marge est égale à 0. Parsefloat assure qu'elle est traitée comme un nombre, elle est ensuite soustraite du décalage supérieur. C'est un code personnalisé, pas quelque chose que vous utiliserez/dont vous avez souvent besoin.

1

1) Il est l'élément d'itération - l'élément actuellement traité par each. Il est automatiquement transmis au rappel. (Je n'aime pas ce modèle, personnellement je préfère utiliser $(this) à l'intérieur each callbacks).

2) La première trouve un élément dont l'attribut est exactement namenewsletter, alors que celui-ci trouve un élément dont l'attribut namese termine parnewsletter. L'utilisation de $ est un emprunt de grammaire d'expression régulière. (Les expressions régulières sont un sujet entièrement distinct).

3) Ceci est un exemple de délégation d'événement (bien que pas très bon - jQuery peut gérer ceci beaucoup plus efficacement que cet exemple ne le montre). La délégation d'événement est certainement quelque chose à regarder.

La ligne que vous mentionnez interroge l'élément déclencheur de l'événement - l'élément qui a déclenché l'événement - et vérifie son parent par rapport à une condition.

4) Je ne dépenserais même pas d'énergie sur ce point - c'est très non standard et localisé dans un cas d'utilisation spécifique.

+0

+1 parce que vous avez réussi à répondre à toutes les 4 questions à 4 votes proches .. Bref, je mettrais une réponse pour Q4: Il stocke juste la position de l'élément par rapport au haut du document moins son 'margeTop'. –

+0

haha ​​J'étais occupé à écrire pendant que les votes serrés arrivaient. Je n'ai pas personnellement de problème avec les questions groupées (elles étaient très petites) mais je sais que certaines personnes ne sont pas d'accord. – Utkanos

Questions connexes