• 4 odgovora
  • 2.284 pregleda
Pomoć oko jQuery - uvjek isti Div 29.02.2012. u 09:43 · pre 178 meseci #1
Na stranici imam nekoliko paragrafa ( oni su iz baze i nose id , 6 znamenki , prvo početno N) , kada kliknem na taj paragraf , , želim da mi se pokaže div , koji objašnjava gore kliknuti paragraf div ima id "ref_ pa broj , kao i paragraf. Ideja je bila , izčitati sve elemeta <p> uzeti samo one koji zadovoljavaju kriterij , stvoriti varijablu poz , i cilj i preko jquery-a pokrenuti .slideToggle("slow"); I sada je tu problem ,kako nisam puno radio sa jQuery-em molim pomoć-.... evo i koda :
Code:



 var all_p = document.body.getElementsByTagName("p"); 
 for (i = 0; i < all_p.length; i++) 
 {
  if ( all_p.item(i).id.length==6  &&  all_p.item(i).id.substr(0,1)=="N")
  {
   var pol="#"+all_p.item(i).id;
   var cilj="#ref_"+all_p.item(i).id.substring(1,6);
  
 
  jQuery(function(){ 
  jQuery(pol).click(function(){
  jQuery(cilj).slideToggle("slow");
  });
});
       
  
  } 
   
 
 }


Problem je ,ma koji ja paragraf kliknem , uvjek mi se otvara zadnji div , ne pripadajući ...



Re: Pomoć oko jQuery - uvjek isti Div 29.02.2012. u 11:14 · pre 178 meseci #2
Rješeno ,ali dosta traljavo , ako ima bolji predlog ....
Code:


  jQuery(function(){ 

  
  jQuery("p").click(function(){

  var cilj =this.id;
   cilj="#"+cilj.replace("N","ref_");

    jQuery(cilj).slideToggle("slow");
 
   
  });    
  
 
 
});



problem , što 'vata' p , koje ja ne želim ..
Re: Pomoć oko jQuery - uvjek isti Div 29.02.2012. u 13:08 · pre 178 meseci #3
Ako je html sledeci
Code:
<div id="info">

    <p id="N12345">Item 1</p>
    <p id="ref_12345">Desc 1</p>

    <p id="N12346">Item 2</p>
    <p id="ref_12346">Desc 2</p>

    <p id="N12347">Item 3</p>
    <p id="ref_12347">Desc 3</p>

</div>
onda bi js izgledao nesto ovako
Code:
    $(document).ready(function() {

        $info = $('#info');

        $('p[id^="N"]', $info).each(function() {
            $(this).click(function() {
                id = $(this).attr('id').substr(1);
                $('#ref_'+id).slideToggle('slow');
            });
        });
    });
Re: Pomoć oko jQuery - uvjek isti Div 29.02.2012. u 18:42 · pre 178 meseci #4
Mislim da je suvišan taj .each(), jer može odma' da se bind-uje click na celu tu kolekciju elemenata koju dobiješ selektorom, ovako:
Code:
$(document).ready(function() {
    $('#info > p[id^="N"]').click(function() {
        var id = $(this).attr('id').substr(1);
        $('#ref_'+id).slideToggle('slow');
    });
});
Prijavite se da biste odgovorili u ovoj temi.PrijavaRegistracija

Premeštanje teme