Obsah fóra
PravidláRegistrovaťPrihlásenie




Odpovedať na tému [ Príspevkov: 6 ] 
AutorSpráva
Offline

Užívateľ
Užívateľ
Miniscript

Registrovaný: 05.09.09
Príspevky: 1141
Témy: 127
Bydlisko: Lehota pod ...
Príspevok NapísalOffline : 21.09.2009 22:11

Prosím vás ak môžte pozrite sa mi na toto!
Je to úplne jednoduchý skriptík.
Mám tu takú mini fotogalériu na kt. robím pokusy.
Je tam obrazovka so zväčšenou fotografiou a pod ňou mám tlačítka pre ktoré píšem funkciu P().
Po nájazde myšou nad šípku vľavo(ostatné ešte nefungujú) by sa mala fotka zmeniť pomocou x-1 v indexe fotky z poľa img(pole s fotkami).
Samozrejme mi to nefunguje a hlási mi chybu ,,img[...].src' is null or not an object,,
Neviem či to správne chápem, že funkcia nepozná pole img, ale neviem, ako jej ho predať.
Vďaka!
link:http://camo.tym.sk/
Kód:
<body style="background-color:#d5d6d5; text-align:center;"
      onload="document.getElementById('foto').src=img[2].src">

<script type="text/javascript">

   var img = [];
       img[0] = new Image();
       img[0].src = "ema43.png ";
         img[1] = new Image();
       img[1].src = "dlazba43.png ";
       img[2] = new Image();
       img[2].src = "ceresne243.png ";
       img[3] = new Image();
       img[3].src = "vandali43.png ";
       img[4] = new Image();
       img[4].src = "ceresne43.png ";
      

  function F(x)
     {document.getElementById('foto').src=x};

  function P(z)
      {
      var x=0;
      while (img[x].src == document.getElementById('foto').src)
      {  x++; }
      switch(z) {
          case 1 : document.getElementById('foto').src=img[x-1].src;
              document.getElementById('T1').style.visibility="visible";
          break;

          case 2 : document.getElementById('foto').src=img[x+1].src;
              document.getElementById('T4').style.visibility="visible";
          break;
           }
      }
                  
                  
                  
</script>

<div style="margin:100px auto;
            width:710px; height:562px;
            background-image:url('litebox.png');
       text-align:left">
   <img src=" " id="foto"
                style="width:600px; height:450px; margin:25px 20px 0px 87px ">

   <a href="" class="block" style="margin:17px 2px 0px 151px; width:70px; height:50px;"
         onmouseover="P(1)" ><img id="T1" src="T1.png" style="visibility:hidden"
                                                     onmouseout="this.style.visibility='hidden'"></a>
   <a href="" style="margin:0px 2px 0px 0px; background-color:red;width:54px; height:45px"></a>

   <a href="" style="margin:0px 2px 0px 0px; background-color:red;width:58px; height:45px"></a>

   <a href="" style="margin:0px 0px 0px; background-color:red;width:67px; height:45px"></a>


</div>

<div id="nahlad" style="margin-top:0px;
                        height:150px; width:100%;
                        overflow:auto;
                        background-color:#d5d6d5" >

<img src="emaM.png" alt="" onmouseover="F(img[0].src)">

<img src="dlazbaM.png" alt="" onmouseover="F(img[1].src)">

<img src="ceresne2M.png" alt="" onmouseover="F(img[2].src)">

<img src="vandaliM.png" alt="" onmouseover="F(img[3].src)">

<img src="ceresneM.png" alt="" onmouseover="F(img[4].src)">


</div>

</body>


Offline

Správca fóra
Správca fóra
Miniscript

Registrovaný: 27.07.07
Príspevky: 3948
Témy: 51
Bydlisko: Bratislava
Príspevok NapísalOffline : 21.09.2009 23:02

Kód:
while (img[x].src != document.getElementById('foto').src)







_________________
NTB: Acer Aspire 4820TG 14" | CPU: Intel Core i5 2,53 GHz | VGA: ATI Mobility Radeon HD5650 1GB | RAM: 8GB DDR3 1066 MHz | HDD: 1TB SSD WD BLUE
Offline

Užívateľ
Užívateľ
Miniscript

Registrovaný: 05.09.09
Príspevky: 1141
Témy: 127
Bydlisko: Lehota pod ...
Príspevok Napísal autor témyOffline : 22.09.2009 19:03

DÍKY MOC!!!
Ešte neviem, či to bude riešenie, ale bez tohoto, by som aj tak nikam nedošiel.
Dnes som nad tým hodiny rozmýšľal, ale došiel som len na to, že nesprávne predávam funkcii premennú img (pole). Podľa toho, čo som sa dočítal sa to vraj v JS nemôže robiť priamo, ale len cez argument. Fakt je, že vôbec nechápem, prečo funkcie nechápu premennú typu pole. Ak mi to niekto dokáže vysvetliť, tak to budem čítať s padnutou sánkou.
Ešte raz - dík moc!

PS: K čomu sú také avatary dobré?







_________________
Som fanúšikom Europa2point disco clubu. Už len kôli tomu menu, čo majú na webe...
Offline

Užívateľ
Užívateľ
Miniscript

Registrovaný: 05.09.09
Príspevky: 1141
Témy: 127
Bydlisko: Lehota pod ...
Príspevok Napísal autor témyOffline : 22.09.2009 20:27

No tak som zmenil == za != a script začal reagovať!
Ale miesto x-1 urobil x-2. Teda tak to ja vidím. A keď som mu to -1 vymazal, tak zase prestal reagovať.
Podopĺńal som tam ešte pár vecí, ale je to ,,na milú kedveš,,:loony: . Presnejšie je to opísané tu: http://diskuse.jakpsatweb.cz/index.php?action=vthread&forum=8&topic=100327&page=-1#8 :loony:


Offline

Správca fóra
Správca fóra
Miniscript

Registrovaný: 27.07.07
Príspevky: 3948
Témy: 51
Bydlisko: Bratislava
Príspevok NapísalOffline : 22.09.2009 20:41

vies preco to robi? lebo tam mas onmouseover a vzdy, ked o kus posunies mysou nad danym objektom, tak sa ti vykona funkcia P => daj tam namiesto toho:
Kód:
onclick="P(1);return false;"

a druhy parameter funkcie P, co si tam pridal uplne zbytocne, odstran...







_________________
NTB: Acer Aspire 4820TG 14" | CPU: Intel Core i5 2,53 GHz | VGA: ATI Mobility Radeon HD5650 1GB | RAM: 8GB DDR3 1066 MHz | HDD: 1TB SSD WD BLUE
Offline

Užívateľ
Užívateľ
Miniscript

Registrovaný: 05.09.09
Príspevky: 1141
Témy: 127
Bydlisko: Lehota pod ...
Príspevok Napísal autor témyOffline : 22.09.2009 21:17

Ten onclick, aj return fals som mal v pláne, ale nerátal som s tým, že mi bude robiť onmouseover problémy. Klobúk dole a dík za čas a námahu. Už som myslel,, ,že dohryziem ten monitor,,!

PS: Chodí veľa programátorov k psychiatrovi?
PS2: Čo som to teda čítal o tom predávaní premenných typu pole funkciám? Je možné, že to bol riadne starý článok, ale to už neviem.


Odpovedať na tému [ Príspevkov: 6 ] 


Nemôžete zakladať nové témy v tomto fóre
Nemôžete odpovedať na témy v tomto fóre
Nemôžete upravovať svoje príspevky v tomto fóre
Nemôžete mazať svoje príspevky v tomto fóre

Skočiť na:  

Powered by phpBB Jarvis © 2005 - 2024 PCforum, webhosting by WebSupport, secured by GeoTrust, edited by JanoF
Ako väčšina webových stránok aj my používame cookies. Zotrvaním na webovej stránke súhlasíte, že ich môžeme používať.
Všeobecné podmienky, spracovanie osobných údajov a pravidlá fóra