Visualizzazione dei risultati da 1 a 5 su 5

Discussione: Selettore jquery e id

  1. #1

    Selettore jquery e id

    Ciao a tutti.
    Sto lavorando sullo stule delle featured image del mio blog di wordpress. Praticamente con il metodo prepend sono riuscito a sistemarle dopo il titolo del post e prima dell'estratto, e con il float le ho sistemate egregiamente. Il problema è che non vorrei scrivere un codice per ogni post pubblicato, quindi dovrei fare in modo che jquery applicasse la regola a ogni id che assegna al post in home page. Qualcuno sa come potrei intervenire sul selettore? Pensavo di assegnare una variabile numerica da 1 a 100000 e di inserirla nel selettore, ma non ci sono riuscito (e non penso che sia neanche il metodo giusto).
    Grazie a tutti per l'attenzione.

    <script>
    $(function() {

    $("#post-2842 > .fusion-flexslider").prependTo("#post-2842 > .post-content-container > .excerpt-container")
    $("#post-2908 > .fusion-flexslider").prependTo("#post-2908 > .post-content-container > .excerpt-container")
    $("#post-2616 > .fusion-flexslider").prependTo("#post-2616 > .post-content-container > .excerpt-container")


    });


    </script>

  2. #2
    Ho provato dichiarando una variabile numerica in loop; concettualmente potrebbe andare, ma forse sbaglio qualcosa nella sintassi.

    <script>
    $(function() {

    var text = "";
    var i;
    for (i = 0; i < 10000; i++) {
    text += i;
    }

    $("#post-" + i + "> .fusion-flexslider").prependTo("#post-" + i + "> .post-content-container > .excerpt-container")


    });


    </script>

    Che ne dite?

  3. #3
    Utente di HTML.it
    Registrato dal
    Dec 2010
    Messaggi
    3,660
    ciao, usa solo la classe come selettore, al posto di id progressivi, cosi da applicare il prepend e il float a tutti gli elementi

  4. #4
    Quote Originariamente inviata da Vindav Visualizza il messaggio
    ciao, usa solo la classe come selettore, al posto di id progressivi, cosi da applicare il prepend e il float a tutti gli elementi

    Ho provato, ma in questo modo applica il prepend a tutta la classe di elementi e lo applica a tutti gli elementi del selettore: in pratica mette tutte le immagini in evidenza in tutti i post.

    Quel loop che avevo postato sopra è sbagliato.

  5. #5
    Utente di HTML.it L'avatar di m4rko80
    Registrato dal
    Aug 2008
    residenza
    Milano
    Messaggi
    2,655
    A patto che ci sia una sola immagine all'interno di un solo post, che ci sia un solo .excerpt-container al suo interno e che ci sia un solo elemento(il blocco post) che inizia per post-QUALCOSA, questo dovrebbe applicarlo a tutti.
    codice:
    var postList = $('[id^="post-"]'); //Tutti i tag con id che inizianon per "post-"
    $.each(postList,function(i,el){
      var imagePost = $(el).find('.fusion-flexslider'); //L'immagine del post
      $(imagePost).prependTo($(this).find('.excerpt-container'));
    });
    Il ciclo for può funzionare, ma in la nel tempo se dovessi avere chissà quanti post non andrebbe più perchè gli id che usa WP sono id univoci nel database e non incrementali in pagina. Una volta superato il 10000 a db non funzionerebbe più.
    Oltretutto fare un ciclo da 10000 può risultare anche pesante per le prestazioni del caricamento pagina.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.