Visualizzazione dei risultati da 1 a 5 su 5

Visualizzazione discussione

  1. #1
    Utente di HTML.it
    Registrato dal
    Feb 2015
    Messaggi
    38

    [Jqueri} problema toggle e classi

    Salve ragazzi ho due problemi, ho richiamato un file Json in HTML, fin qui tutto bene, in questo file ci sono immagini e testo, il testo viene inserito in un paragrafo all'interno di un div, le foto invece vengono caricate in un altro div.

    I miei problemi sono:
    Ho inserito una funzione Jqueri in modo che venga assegnata la classe esatta alle foto, funziona ma ha una ripetizione continua e blocca la visualizzazione.
    Il primo problema credo si risolva col secondo.
    Io devo inserire 4 file json all'interno di una stessa sezione, ma quando appare uno deve scomparire l'altro.

    Vi aggiungo il codice commentato cos� potete capire meglio.

    codice:
    $("#one").click(function () {    
    $.getJSON("data/one.json", function (obj, data) {
            $.each(obj, function (key, value) {
                $("#cont1 .txt").append("<p>" + value.name + "</p>");
                $("#cont1 .txt").append("<p>" + value.details + "</p>");
                $("#cont1 .txt").append("<p>" + value.age + "</p>");
                $("#cont1 .txt").append("<p>" + value.color + "</p>");
                for (var i = 0; i < value.images.length; i++) {
                    $("#cont1 .pht").append("<img src=" + value.images [i] + ">");
                }
            });
    //aggiunta delle clessi
    
        $("#section #coldx img").addClass(function(){
                return "photo_";
            });    
        });    
    });
            
        
    $("#two").click(function () {    
    $.getJSON("data/two.json", function (obj, data) {
            $.each(obj, function (key, value) {
                $("#cont2 .txt").append("<p>" + value.name + "</p>");
                $("#cont2 .txt").append("<p>" + value.details + "</p>");
                $("#cont2 .txt").append("<p>" + value.age + "</p>");
                $("#cont2 .txt").append("<p>" + value.color + "</p>");
                for (var i = 0; i < value.images.length; i++) {
                    $("#cont2 .pht").append("<img src=" + value.images [i] + ">");
                }
            });
        $("#section #coldx img").addClass(function(n){
                return "photo_" + n;
            });    
        });
    });
    
    
    $("#three").click(function () {    
    $.getJSON("data/one.json", function (obj, data) {
            $.each(obj, function (key, value) {
                $("#cont3 .txt").append("<p>" + value.name + "</p>");
                $("#cont3 .txt").append("<p>" + value.details + "</p>");
                $("#cont3 .txt").append("<p>" + value.age + "</p>");
                $("#cont3 .txt").append("<p>" + value.color + "</p>");
                for (var i = 0; i < value.images.length; i++) {
                    $("#cont3 .pht").append("<img src=" + value.images [i] + ">");
                }
            });
        $("#section #coldx img").addClass(function(){
                return "photo_";
            });    
        });    
    });
            
        
    $("#four").click(function () {    
    $.getJSON("data/two.json", function (obj, data) {
            $.each(obj, function (key, value) {
                $("#cont4 .txt").append("<p>" + value.name + "</p>");
                $("#cont4 .txt").append("<p>" + value.details + "</p>");
                $("#cont4 .txt").append("<p>" + value.age + "</p>");
                $("#cont4 .txt").append("<p>" + value.color + "</p>");
                for (var i = 0; i < value.images.length; i++) {
                    $("#cont4 .pht").append("<img src=" + value.images [i] + ">");
                }
            });
    //aggiunta delle clessi
        $("#section #coldx img").addClass(function(n){
                return "photo_" + n;
            });    
        });
    });
    questo invece � il codice html
    codice:
    <div id="section">            
      <div id="colsx">              
        <ul>                      
         <li id="one">one</li>                   
        <li id="two">two</li>                  
        <li id="three">three</li>                     
        <li id="four">four</li>           
       </ul>           
      </div>   
     <div id="coldx">    
    <div id="cont1">  
      <div class="txt"></div>  
      <div class="pht"></div>   
    </div>   
    <div id="cont2">    
       <div class="txt"></div>
        <div class="pht"></div>   
     </div>  
      <div id="cont3">    
    <div class="txt"></div>  
      <div class="pht"></div>    
    </div>   
     <div id="cont4"> 
       <div class="txt"></div> 
       <div class="pht"></div>  
      </div>   
     </div>
     </div>
    ho inserito pi� div perch� pensavo che aggiungendo e rimuovendo le classi riuscissi a risolvere il problema della visualizzazione, ma in realt� l'importante � solo che sia che i paragrafi che le foto appaiano nella "coldx" e che la continua creazione di classi a ogni click si fermi.
    spero di essere stato abbastanza chiaro, nel caso chiedete pure
    Ultima modifica di Meliupa; 13-02-2017 a 03:45

Tag per questa discussione

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 © 2024 vBulletin Solutions, Inc. All rights reserved.