Avatar
saša harvan
Člen
Avatar
saša harvan:

ahoj ,mam problem ,mozna uz ho nekde tady nekdo resil ale ja ho nenasel, trochu jsem upravil MVC do tu udelal david(timto mu dekuji) a pridal i obrazky...mam toto

<h1>Seznam článků</h1>
<table >

<?php foreach ($clanky as $clanek) : ?>
        <tr>
                <td>
                        <h2><a href="clanek/<?= $clanek['url'] ?>"><?= $clanek['titulek'] ?></a></h2>
                        <?= $clanek['popisek'] ?>
                        <?php if ($admin) : ?>
                                <br />
                                <a href="editor/<?= $clanek['url'] ?>">Editovat</a>
                                <a href="clanek/<?= $clanek['url'] ?>/odstranit">Odstranit</a>
                        <?php endif ?>
                </td>
    <td>  <?=  $slozka = opendir("obrazky/".$clanek['url']."/"); //otevření složky  ..Interval
         while ($obrazek = readdir($slozka)) :
         if( $obrazek != "." && $obrazek != ".." && strpos($obrazek, '_nahled.'))  :
         $obrazky [] = "obrazky/".$clanek['url']."/".$obrazek;
          ?>
           <?php endif ?>

    <?php endwhile ?>
 <script language="JavaScript" type="text/javascript">
obr = -1;
cas = 1000;
function animation(){

<?php
echo ( "var obrazky = [ \"" . implode( '","' , $obrazky ) . "\" ];" );

?>

if (obr+1==obrazky.length) obr=0;
else obr++;
obrazek.src = obrazky[obr];
window.setTimeout('animation()', cas);
}
</script>




    <img onLoad="animation()" src="<?= $obrazky[0] ?>" name="obrazek" >



    </td>
        </tr>

<?php endforeach ?>
</table>

1.clanek se nacte a k tomu i spravne obrazky, nacte se i druhy clanek,ale obrazky zde jsou z prvniho clanku...proc­...nenacte skript obrazky k druhemu clanku a zustaveji tam obrazky z prvniho?(obrazky k druhemu v dresari jsou) neco mam asi blbe ale nevim co ...predem diky za rady

 
Odpovědět 10. června 7:24
Avatar
solta
Člen
Avatar
Odpovídá na saša harvan
solta:

Nejspíš proto že načítáš obrázky do jedné proměnné $obrazky a nikde ji neresetuješ pokud ji ale vyresetuješ nebude ti fungovat ten javascript budeš asi muset vymyslet lepší řešení

 
Nahoru Odpovědět 10. června 16:07
Avatar
saša harvan
Člen
Avatar
Odpovídá na solta
saša harvan:

tak jsem tam pridal toto...uz to nacita co ma

<?php unset($obrazky); ?>

ale,,, ted ten javascript...asi by to chtelo jinej..moc si to nerozumi....obrazky se nehybou :)..kdyby mel nekdo jinej script na motani obrazku budu rad...jinak diky

 
Nahoru Odpovědět 10. června 19:51
Avatar
solta
Člen
Avatar
Odpovídá na saša harvan
solta:

na webu je spousta "rotatoru" si nějakej stáhni to je nejjednodušší cesta
třeba toto http://www.simonbattersby.com/…e-crossfade/ ale budeš si to muset poupravit protože to umí pracovat jen s jednou sadou obrázků

Akceptované řešení
+20 Zkušeností
+1 bodů
Řešení problému
 
Nahoru Odpovědět 10. června 20:59
Avatar
saša harvan
Člen
Avatar
Odpovídá na solta
saša harvan:

tak jsem to trochu predelal,ten script nejede
asi tam mam neco blbe .....

<h1>Seznam článků</h1>
<table >

<?php foreach ($clanky as $clanek) : ?>
        <tr>
                <td>
                        <h2><a href="clanek/<?= $clanek['url'] ?>"><?= $clanek['titulek'] ?></a></h2>
                        <?= $clanek['popisek'] ?>
                        <?php if ($admin) : ?>
                                <br />
                                <a href="editor/<?= $clanek['url'] ?>">Editovat</a>
                                <a href="clanek/<?= $clanek['url'] ?>/odstranit">Odstranit</a>
                        <?php endif ?>
                </td>
    <td width="294" height="200">  <?=  $slozka = opendir("obrazky/".$clanek['url']."/"); //otevření složky  ..Interval
         while ($obrazek = readdir($slozka)) :
         if( $obrazek != "." && $obrazek != ".." && strpos($obrazek, '_nahled.'))  :
         $obrazky [] = "obrazky/".$clanek['url']."/".$obrazek;
           ?>
           <?php endif ?>

    <?php endwhile ?>
 <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js" type="text/javascript">


 function cycleImages(){
      var $active = $('#cycler .active');
      var $next = ($active.next().length > 0) ? $active.next() : $('#cycler img:first');
      $next.css('z-index',2);//move the next image up the pile
      $active.fadeOut(1500,function(){//fade out the top image
          $active.css('z-index',1).show().removeClass('active');//reset the z-index and unhide the image
          $next.css('z-index',3).addClass('active');//make the next image the top one
      });
    }

$(document).ready(function(){
// run every 7s
setInterval('cycleImages()', 7000);
})

</script>



    <div id="cycler">
<img class="active" src="<?= $obrazky[0] ?>" alt="My image" />
<img src="<?= $obrazky[1] ?>" alt="My image" />
<img src="<?= $obrazky[2] ?>" alt="My image" />
<img src="<?= $obrazky[3] ?>" alt="My image" />
<img src="<?= $obrazky[4] ?>" alt="My image" />
<img src="<?= $obrazky[5] ?>" alt="My image" />
</div>


      <?php unset($obrazky); ?>

    </td>
        </tr>

<?php endforeach ?>
</table>

css je tady

#cycler{position:relative;}
#cycler img{position:absolute;z-index:1}
#cycler img.active{z-index:3}
 
Nahoru Odpovědět 11. června 16:52
Avatar
saša harvan
Člen
Avatar
Odpovídá na saša harvan
saša harvan:

tak uz to vali...mel jsem tam spatne odkaz na jquery :)..no co uz..diky

 
Nahoru Odpovědět  +1 12. června 8:53
Avatar
saša harvan
Člen
Avatar
saša harvan:

no tak jsem se radoval predcasne....udela to jeden beh(oba clanky) ...ale druhy beh uz dela jen prvni clanek(jeho obrazky)...u toho druheho se to nejak zakucka a skonci to ,,,jsem zase v ...... :)

 
Nahoru Odpovědět 12. června 9:39
Avatar
saša harvan
Člen
Avatar
saša harvan:

musim to asi udelat aby si script ocisloval to <div id="cycler"> a on to pak bude poustet jako rozdilny id ..a to by mohlo pomoct ,,,,, nebo je to blbost ,,co?

 
Nahoru Odpovědět 12. června 10:35
Avatar
saša harvan
Člen
Avatar
saša harvan:

tak jsem tam pridal pocitadlo na id cycler
ale nevim jak ho pridat do toho javascriptu(vubec ho neznam) a jestli to vubec je dobra cesta

<?= $koncovka++ ;
   $idgalerie ="cycler".$koncovka;
   ?>

    <div id=<?=$idgalerie?>" class="cycler">
<img class="active" src="<?= $obrazky[0] ?>" alt="My image"   />
<img src="<?= $obrazky[1] ?>" alt="My image"  />
<img src="<?= $obrazky[2] ?>" alt="My image"  />
<img src="<?= $obrazky[3] ?>" alt="My image"  />
<img src="<?= $obrazky[4] ?>" alt="My image"  />
<img src="<?= $obrazky[5] ?>" alt="My image"  />
</div>
 <script type="text/javascript">

 function cycleImages(){

      var $active = $('#cycler .active'); //misto cycler dat $idgalerie asi????
      var $next = ($active.next().length > 0) ? $active.next() : $('#cycler img:first');
      $next.css('z-index',2);//move the next image up the pile
      $active.fadeOut(1500,function(){//fade out the top image
          $active.css('z-index',1).show().removeClass('active');//reset the z-index and unhide the image
          $next.css('z-index',3).addClass('active');//make the next image the top one
      });
    }

$(document).ready(function(){
// run every 5s
setInterval('cycleImages()', 5000);
})

</script>
Editováno 12. června 11:31
 
Nahoru Odpovědět 12. června 11:31
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 9 zpráv z 9.