Estoy escribiendo $(this).closest('.comment').find('form').toggle('slow'); y el problema es que cada una de las formas en que el niño es controlado. Me gustaría sólo la primera forma para activarse. el html es algo así como la de abajo y este es el enlace

<div comment>
<a href>
<form>
</form>
    <a href>
    <div comment>
    <form>
    </form>
    </div>
</div>
  • Usted ya tiene una buena respuesta a esta pregunta, pero la próxima vez por favor, tómese el tiempo para mirar en la documentación. JQuery es muy bien documentado, y se habría encontrado la :first selector fácilmente en su propio hubiera sido sólo buscando… docs.jquery.com/Main_Page
  • Yo lo hice y no podía encontrarlo. Yo soy malo en jquery y este es mi 2do uso. Me cogió de los conceptos básicos y ya pasan de 1 hora en este y mi anterior pregunta
  • Tal vez usted no mira en api.jquery.com pero en lugar de ello en la documentación antigua en docs.jquery.com y estoy de acuerdo en que debido a la edad de la documentación de la estructura de lo que solía ser muy difícil de encontrar sencillas funciones de la API como este.
InformationsquelleAutor | 2010-02-01

5 Comentarios

  1. 53

    Usted puede utilizar cualquiera de los

    $(this).closest('.comment').find('form').eq(0).toggle('slow');

    o

    $(this).closest('.comment').find('form:first').toggle('slow');
    • segunda opción trabajado para mí, tuve que seleccionar primero div jQuery(this).más cercano(‘.divmodule’).find(‘div:first’).attr(‘class’));
    • FYI, $(‘.foo:first’) es un poco más lento que $(‘.foo’).(primer). jsperf.com/jquery-first-vs-first-vs-eq-0-vs-0/2
    • Si realmente se preocupan por el rendimiento, nativo getElementsByTagName es mucho, mucho más rápido: jsperf.com/jquery-first-vs-first-vs-eq-0-vs-0/16
    • ¿Esta recorrer el árbol y, a continuación, recoger luego primer elemento? O lo hace de alguna manera detener después de encontrar el primer elemento? Lo pregunto porque estoy tratando con un árbol con cientos de nodos anidados, pero sólo desea seleccionar el primer elemento coincidente. Me pregunto si este método es ineficiente para este caso.
  2. 9

    Uso :first selector como el de abajo :

    $(this).closest('.comment').find('form:**first**').toggle('slow');
  3. 4

    Yo uso

    $([selector]).slice(0, 1)

    porque es el más explícito en forma de seleccionar un trozo de la consulta y porque puede ser fácilmente modificado para que coincida no es el primer elemento, sino el siguiente, etc.

  4. 0

    Utilizar el ejemplo siguiente para jquery encontrar para obtener el primer elemento

    Más filtring métodos Con el Demo

    JS:

    $(document).ready(function(){
      $(".first").first().css("background-color", "green");
    });

    CSS:

    .first{
        padding: 15px;
        border: 12px solid #23384E;
        background: #28BAA2;
        margin-top: 10px;
    }

    HTML:

    <!DOCTYPE html>
    <html>
    <head>
    <title>jQuery First Method Example By Tutsmake</title> 
    <script src="https://code.jquery.com/jquery-3.3.1.min.js"></script> 
    </head>
    <body>
     
    <h1>This is first() method example</h1>
     
    <div class="first">
      <p>A paragraph in a div.</p>
      <p>Another paragraph in a div.</p>
    </div>
    <br>
     
    <div class="first">
      <p>A paragraph in another div.</p>
      <p>Another paragraph in another div.</p>
    </div>
    <br>
     
    <div class="first">
      <p>A paragraph in another div.</p>
      <p>Another paragraph in another div.</p>
    </div>
     
    </body>
    </html>

Dejar respuesta

Please enter your comment!
Please enter your name here