2 φορές το ίδιο script

Κώδικας, πληροφορίες, ερωτήσεις και απαντήσεις σχετικές με την JavaScript.

Συντονιστές: WebDev Moderators, Super-Moderators

Απάντηση
Άβαταρ μέλους
EneMe
Super Moderator
Δημοσιεύσεις: 13307
Εγγραφή: 09 Ιούλ 2002 13:29
Τοποθεσία: Στο κέντρο της Ελλάδας!
Επικοινωνία:

2 φορές το ίδιο script

Δημοσίευση από EneMe » 20 Δεκ 2009 20:47

Xρησιμοποιώ αυτό:

Κώδικας: Επιλογή όλων

<script language=javascript>
var width = 400;
var height = 300;
var imgAr1 = new Array&#40;&#41;;
var rImg1 = new Array&#40;&#41;;

imgAr1&#91;0&#93; = "a1.jpg";
imgAr1&#91;1&#93; = "a2.jpg";
imgAr1&#91;2&#93; = "a3.jpg";
imgAr1&#91;3&#93; = "a4.jpg";
imgAr1&#91;4&#93; = "a5.jpg";

</script>

<table cellpadding=0 cellspacing=0><tr><td style="border&#58; 2px ridge black;">
<img id=pic border=0>

</td></tr>
<tr><td>
<table width=100% style="border&#58; 2px ridge black; font-size&#58; 13px; font-family&#58; verdana, arial;">
<td align=center width=35%><a style="color&#58; blue; cursor&#58;pointer;" onclick="prev&#40;&#41;">Προηγούμενη</a></td>
<td align=center width=30%><strong>ΦΩΤΟΓΡΑΦΙΕΣ</strong></td>
<td align=center width=35%><a style="color&#58; blue; cursor&#58;pointer;" onclick="slideshow&#40;&#41;">Επόμενη</a></td>  
</tr></table>
</td></tr></table>

<script language=javascript>

for&#40;var j = 0; j < imgAr1.length; j++&#41;
&#123;
		rImg1&#91;j&#93; = new Image&#40;&#41;;
            rImg1&#91;j&#93;.src = imgAr1&#91;j&#93;;
&#125;

document.onload = setting&#40;&#41;;

var slide;
function setting&#40;&#41;
&#123;
	slide = document.getElementById&#40;'pic'&#41;;
	slide.src = imgAr1&#91;0&#93;;
	slide.setAttribute&#40;"width",width&#41;;
	slide.setAttribute&#40;"height",height&#41;;
&#125;

//Image or picture slide show using java script
//slideshow function
var picture = 0;
function slideshow&#40;&#41;&#123;
	if&#40;picture < imgAr1.length-1&#41;&#123;
		picture=picture+1;
		slide.src = imgAr1&#91;picture&#93;;
	&#125;
&#125;

function prev&#40;&#41;&#123;
	if&#40;picture > 0 &#41;&#123;
		picture=picture-1;
		slide.src = imgAr1&#91;picture&#93;;
	&#125;
&#125;

function start&#40;&#41;&#123;
		slide.src = imgAr1&#91;0&#93;;
		picture = 0;
&#125;

function end&#40;&#41;&#123;
		slide.src = imgAr1&#91;imgAr1.length-1&#93;;
		picture = imgAr1.length-1
&#125;
</script>
Αν το βάλω 2 φορές σε μια σελίδα, τα κάνει μαντάρα...

Δοκίμασα να το βάλω μια φορά όπως είναι και μία κάνοντας όλα τα μεταβλητή1 σε μεταβλητή2 αλλά και πάλι είχα πρόβλημα... καμιά βοήθεια;

Άβαταρ μέλους
Connor MacLeod
Honorary Member
Δημοσιεύσεις: 13372
Εγγραφή: 07 Φεβ 2005 13:36
Τοποθεσία: Κοζάνη
Επικοινωνία:

2 φορές το ίδιο script

Δημοσίευση από Connor MacLeod » 20 Δεκ 2009 22:56

Αυτο που μπορω να σε πω ειναι το εξής. Εγω σε αυτο τον κώδικα αλλάζω αυτα που ειναι bold:

<script type='text/javascript' src='swfobject.js'></script>
<div id='player1' class="player">This text will be replaced</div>
<script type='text/javascript'>var so = new SWFObject('../files/player.swf','mpl1','385','289','9');
so.addParam('allowfullscreen','true');
so.addParam('allowscriptaccess','always');
so.addParam('wmode','opaque');
so.addVariable('file','../files/file.flv');
so.addVariable('controlbar','none');
so.write('player1');
</script>

Αν για κάποιο λόγο αφήσω οποιοδήποτε απο αυτα που ειναι bold το ίδιο, δεν παιζει.
Meizu MX5(5.5"/8Core/3GB/32GB/Sony IMX220 20.7MP)
PC 27'' (3770@3.4/16GB/560SE/500GB SATA3/650W S12G)
Mac mini (2.5GHz/8GB/6630/90GB GorsairGT)

Άβαταρ μέλους
EneMe
Super Moderator
Δημοσιεύσεις: 13307
Εγγραφή: 09 Ιούλ 2002 13:29
Τοποθεσία: Στο κέντρο της Ελλάδας!
Επικοινωνία:

2 φορές το ίδιο script

Δημοσίευση από EneMe » 21 Δεκ 2009 12:42

Ναι, έτσι το σκέφτηκα, αλλά τα "χειριστήρια" είναι έξω από τα <script> tags και δεν δουλεύει...

Καμιά ιδέα;

MasterX
Δημοσιεύσεις: 92
Εγγραφή: 13 Οκτ 2009 13:29
Επικοινωνία:

2 φορές το ίδιο script

Δημοσίευση από MasterX » 21 Δεκ 2009 15:05

Αν γράψεις το κώδικα 2 φορές, τότε ορίζεις τις συναρτήσεις 2 φορές. Αυτό και μόνο δημιουργεί πρόβλημα.

Άβαταρ μέλους
paink1ller
Δημοσιεύσεις: 865
Εγγραφή: 21 Ιαν 2008 19:51

2 φορές το ίδιο script

Δημοσίευση από paink1ller » 21 Δεκ 2009 15:10

Λειπει ενα <tr> στην HTML σου.

2 φορες πως το εννοεις? Τις ιδιες pic σε δυο διαφορετικα slideshow?
Ηobby: Shooting photons

Άβαταρ μέλους
EneMe
Super Moderator
Δημοσιεύσεις: 13307
Εγγραφή: 09 Ιούλ 2002 13:29
Τοποθεσία: Στο κέντρο της Ελλάδας!
Επικοινωνία:

2 φορές το ίδιο script

Δημοσίευση από EneMe » 21 Δεκ 2009 15:19

Πού λείπει και δεν το βλέπω; :-?

2 slideshows με διαφορετικές εικόνες θέλω να κάνω...

Άβαταρ μέλους
paink1ller
Δημοσιεύσεις: 865
Εγγραφή: 21 Ιαν 2008 19:51

2 φορές το ίδιο script

Δημοσίευση από paink1ller » 21 Δεκ 2009 16:40

Βασικα το document object δεν εχει onload property οποτε στην ουσια του εβαζες καινουργια εσυ.
To window εχει onload.

Mπακαλιστικα λοιπον γινεται ετσι. Για να γινει modular και να βαζεις οσα slideshow θες εχει δουλιτσα οποτε βολεψου ετσι αν θες. Χειροκινητα μπορεις να προσθεσεις και αλλα slideshow αν καταλαβεις πως δουλευει.

Κώδικας: Επιλογή όλων

<html>

<head>
  <title></title>
<script language="javascript">

var width = 400;
var height = 300;
var imgAr1 = new Array&#40;&#41;;
var imgAr2 = new Array&#40;&#41;;
var rImg1 = new Array&#40;&#41;;
var rImg2 = new Array&#40;&#41;;

imgAr1&#91;0&#93; = "img_seq1_1.jpg";
imgAr1&#91;1&#93; = "img_seq1_2.jpg";
imgAr1&#91;2&#93; = "img_seq1_3.jpg";
imgAr1&#91;3&#93; = "img_seq1_4.jpg";
imgAr1&#91;4&#93; = "img_seq1_5.jpg";

imgAr2&#91;0&#93; = "img_seq2_1.jpg";
imgAr2&#91;1&#93; = "img_seq2_2.jpg";
imgAr2&#91;2&#93; = "img_seq2_3.jpg";
imgAr2&#91;3&#93; = "img_seq2_4.jpg";
imgAr2&#91;4&#93; = "img_seq2_5.jpg";

</script>

<script language="javascript">
for&#40;var j = 0; j < imgAr1.length; j++&#41;
&#123;
      rImg1&#91;j&#93; = new Image&#40;&#41;;
            rImg1&#91;j&#93;.src = imgAr1&#91;j&#93;;
&#125;
for&#40;var j = 0; j < imgAr2.length; j++&#41;
&#123;
      rImg2&#91;j&#93; = new Image&#40;&#41;;
            rImg2&#91;j&#93;.src = imgAr2&#91;j&#93;;
&#125;

var slide;
var slide2;
function setting&#40;&#41;
  &#123;

     slide = document.getElementById&#40;'pic'&#41;;
     slide.src = imgAr1&#91;0&#93;;
     slide.setAttribute&#40;"width",width&#41;;
     slide.setAttribute&#40;"height",height&#41;;
     //2o slide
     slide2 = document.getElementById&#40;'pic2'&#41;;
     slide2.src = imgAr2&#91;0&#93;;
     slide2.setAttribute&#40;"width",width&#41;;
     slide2.setAttribute&#40;"height",height&#41;;
  &#125;

window.onload = setting;

var picture = 0;
var picture2 = 0;

function slideshow&#40;slide_no&#41;&#123;
  switch&#40;slide_no&#41;
      &#123;
      case 1&#58;
           if&#40;picture < imgAr1.length-1&#41;&#123;
              picture=picture+1;
              slide.src = imgAr1&#91;picture&#93;;
           &#125;
        break;
      case 2&#58;
           if&#40;picture2 < imgAr2.length-1&#41;&#123;
              picture2=picture2+1;
              slide2.src = imgAr2&#91;picture2&#93;;
           &#125;
        break;
      &#125;

&#125;

function prev&#40;slide_no&#41;&#123;
  switch&#40;slide_no&#41;
      &#123;
      case 1&#58;
           if&#40;picture > 0 &#41;&#123;
             picture=picture-1;
             slide.src = imgAr1&#91;picture&#93;;
             &#125;
        break;
      case 2&#58;
           if&#40;picture2 > 0 &#41;&#123;
             picture2=picture2-1;
             slide2.src = imgAr2&#91;picture2&#93;;
             &#125;
        break;
      &#125;


&#125;

function start&#40;slide_no&#41;&#123;
      slide.src = imgAr1&#91;0&#93;;
      picture = 0;
      slide2.src = imgAr1&#91;0&#93;;
      picture2 = 0;
&#125;

function end&#40;slide_no&#41;&#123;
      slide.src = imgAr1&#91;imgAr1.length-1&#93;;
      picture = imgAr1.length-1
      slide2.src = imgAr2&#91;imgAr2.length-1&#93;;
      picture2 = imgAr2.length-1
&#125;
</script>

</head>

<body>
<table cellpadding=0 cellspacing=0>
    <tr>
      <td style="border&#58; 2px ridge black;">
      <img id="pic" src="img_seq1_1.jpg" border="0">

      </td>
    </tr>
    <tr>
    <td>
    <table width=100% style="border&#58; 2px ridge black; font-size&#58; 13px; font-family&#58; verdana, arial;">
      <tr>
        <td align=center width=35%>
            <a style="color&#58; blue; cursor&#58;pointer;" onclick="prev&#40;1&#41;">Προηγούμενη</a>
        </td>
        <td align=center width=30%>
            <strong>ΦΩΤΟΓΡΑΦΙΕΣ</strong>
        </td>
        <td align=center width=35%>
            <a style="color&#58; blue; cursor&#58;pointer;" onclick="slideshow&#40;1&#41;">Επόμενη</a>
        </td>
      </tr>
    </table>
    </td>
    </tr>

</table>

<br />

<table cellpadding=0 cellspacing=0>
    <tr>
      <td style="border&#58; 2px ridge black;">
      <img id="pic2" border="0">

      </td>
    </tr>
    <tr>
    <td>
    <table width=100% style="border&#58; 2px ridge black; font-size&#58; 13px; font-family&#58; verdana, arial;">
      <tr>
        <td align=center width=35%>
            <a style="color&#58; blue; cursor&#58;pointer;" onclick="prev&#40;2&#41;">Προηγούμενη</a>
        </td>
        <td align=center width=30%>
            <strong>ΦΩΤΟΓΡΑΦΙΕΣ</strong>
        </td>
        <td align=center width=35%>
            <a style="color&#58; blue; cursor&#58;pointer;" onclick="slideshow&#40;2&#41;">Επόμενη</a>
        </td>
      </tr>
    </table>
    </td>
    </tr>

</table>
</body>

</html>
Ηobby: Shooting photons

Άβαταρ μέλους
EneMe
Super Moderator
Δημοσιεύσεις: 13307
Εγγραφή: 09 Ιούλ 2002 13:29
Τοποθεσία: Στο κέντρο της Ελλάδας!
Επικοινωνία:

2 φορές το ίδιο script

Δημοσίευση από EneMe » 22 Δεκ 2009 00:07

Πωπω, μπερδεύτηκα... Πάω να το δοκιμάσω!

Ευχαριστώ για το ενδιαφέρον!

Απάντηση

Επιστροφή στο “JavaScript και Frameworks”

Μέλη σε σύνδεση

Μέλη σε αυτήν τη Δ. Συζήτηση: Δεν υπάρχουν εγγεγραμμένα μέλη και 2 επισκέπτες