Avatar billede speedy_2003 Nybegynder
05. december 2004 - 01:47 Der er 4 kommentarer og
1 løsning

Hvad har jeg gjort galt i mit java script om array det virker ikk

Jeg er igang med at lave en intern hp til mit netværk der hjemme, og nu vil jeg bruge en javascript som jeg har fundet til at når jeg trykker på en form knap så skal den åbne alle de hjemmesider som jeg har indtastet i mine array...

her er den del af kilde koden:
PS: <%=(Recordset1.Field.Item("hvadfeltethedder").Value)%> er fordi at jeg bruger ASP og ODBC sammen med altså Access:

Her kommer koden:
<script type="text/javascript">
//<!--
ed2k_array=new Array;
n=0;link_array[0]="<%=(Recordset1.Fields.Item("link1").Value)%>";
link_array[1]="<%=(Recordset1.Fields.Item("link2").Value)%>";
link_array[2]="<%=(Recordset1.Fields.Item("link3").Value)%>";
link_array[3]="<%=(Recordset1.Fields.Item("link4").Value)%>";
link_array[4]="<%=(Recordset1.Fields.Item("link5").Value)%>";
iv=false;
function add()
{
    var s=link_array[n];
    n++;
    if(n==link_array.length && iv)
    {
        top.clearInterval(iv);
        n=0;
    }
    top.document.location=s;
    return true;
}

function addlinks()
{
    iv=top.setInterval('add()',50);
}
//-->
</script>

og her er knap koden:
<input type="button" onClick="addlinks()" name="Button" value="Åben Alle Links" class="knap2">

lige et spørgsmål:
er det muligt at få den til at vis der nu er mere end 5 links at den så selv tilføjer en ny link_array[X]="";

X = et tal fra 1 - 10

Håber i vil give mig en meget meget enkel forklaring da jeg ikke har forstand på JAVA og det var et script jeg fik af en kammerat...

Hilsen
Speedy
Avatar billede olebole Juniormester
05. december 2004 - 04:49 #1
<ole>

Her er scriptet, rettet lidt til. Er det virkelig meningen, du vil åbne alle siderne i samme vindue med 0,05 sekunds mellemrum? Kan du så ikke bare åbne den sidste?  :)

Jeg forstår ikke helt det andet spørgsmål. Hvorfra skal de andre links komme fra? Hvad skal kunne sætte dem ind?

/mvh
</bole>
Avatar billede olebole Juniormester
05. december 2004 - 04:49 #2
Hov hér er det  :)

<script type="text/javascript">
//<!--
var link_array=new Array;
n=0;link_array[0]="<%=(Recordset1.Fields.Item("link1").Value)%>";
link_array[1]="<%=(Recordset1.Fields.Item("link2").Value)%>";
link_array[2]="<%=(Recordset1.Fields.Item("link3").Value)%>";
link_array[3]="<%=(Recordset1.Fields.Item("link4").Value)%>";
link_array[4]="<%=(Recordset1.Fields.Item("link5").Value)%>";
iv=false;
function add()
{
    var s=link_array[n];
    n++;
    if(n==link_array.length && iv)
    {
        top.clearInterval(iv);
        n=0;
    }
    top.location.href=s;
    return true;
}

function addlinks()
{
    iv=top.setInterval('add()',50);
}
//-->
</script>
Avatar billede roenving Novice
05. december 2004 - 07:00 #3
For mig lyder det som om, du har brug for en maskine, som åbner flere vinduer, f.eks. den, jeg selv bruger:

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
    "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>TÆL NED -- og åbn ...</title>
<meta name="Generator" content="Stone's WebWriter 4">
<script language="javascript">

var title = new Array();
var links = new Array();
var delay = new Array();
title[0]="E*";
links[0]="http://www.eksperten.dk/";
delay[0]=60;
title[1]="G-mail";
links[1]="http://gmail.google.com/gmail";
delay[1]=36000;
title[2]="e|bruger";
links[2]="http://www.ebruger.dk";
delay[2]=600;
title[3]="ofir";
links[3]="http://www.ofir.dk";
delay[3]=1800;
title[4]="";
links[4]="";
delay[4]=100000;

var nextLoad = new Array();
var ids = 0;
var nu = new Date().getTime();
var minTid = 0;
var minTitle = "";

function checkUrl(url){
    if (url.indexOf("http://")==0)return url;
    if (url.indexOf("www.")==0)return "http://"+url;
    regexp=/\w+\.\w+\.\w{2,}(\/\w+)*/i;
    if (regexp.test(url))return "http://"+url;
    return "/";
}

function startTael() {
    for (i=0;links.length>i;i++){
        links[i]=checkUrl(links[i]);
        document.minForm.elements['titel'+i].value=title[i];
        document.minForm.elements['link'+i].value=links[i];
        document.minForm.elements['tid'+i].value=delay[i];
        nextLoad[i]= 0;
    }
  ids=setInterval(taelNed,1000);
}

function stopTael(){
    clearInterval(ids);
}

function startNyTael(){
    clearInterval(ids);
    var j = 0;
    delete title;
    delete links;
    delete delay;
    links = new Array();
    delay = new Array();
   
    for (var i=0;5>i;i++){
        if (document.minForm.elements['link'+i].value!=""){
            title[j] = document.minForm.elements['titel'+i].value;
            links[j] = checkUrl(document.minForm.elements['link'+i].value);
            delay[j] = document.minForm.elements['tid'+i].value;
            if (5>parseInt(delay[j]))delay[j] = 60;
            j++;
        }
    }
    for (i=0;links.length>i;i++){
        document.minForm.elements['titel'+i].value=title[i];
        document.minForm.elements['link'+i].value=links[i];
        document.minForm.elements['tid'+i].value=delay[i];
        nextLoad[i]= 0;
    }
    for (j=i;5>j;j++){
        document.minForm.elements['titel'+j].value="";
        document.minForm.elements['link'+j].value="";
        document.minForm.elements['tid'+j].value="";
        nextLoad[j]= 0;
    }
  ids=setInterval(taelNed,1000);
}

function taelNed(){
  nu = new Date().getTime();
  minTid = 1000000000;
  for(i=0;links.length>i;i++){
      msek = nextLoad[i] - nu;
      var sek = Math.floor(msek/1000);
      document.getElementById('minSpan'+i).innerText=sek+" s.";
      if(minTid>sek){
          minTid = sek;
          minTitle = title[i];
      }

      if (0>=msek){
        if (links[i]!="/")window.open(links[i],'NySide'+i);
        if (nextLoad[i]==0){
            nextLoad[i] = nu + Math.floor(Math.random()*delay[i]*500) + delay[i]*500;
        }else{
            nextLoad[i] = nu+delay[i]*1000;
        }
      }
    }
    document.title=minTid+" s. til "+minTitle;

}

</script>
</head>

<body onload="startTael()">
<h1>Opdatering af vinduer</h1>
<form name="minForm">
<table border="2">
    <tr>
        <td align="center">
            <h3>
                Titel
            </h3>
        </td>
        <td align="center">
            <h3>
                Links der skal åbnes
            </h3>
        </td>
        <td align="center">
            <h3>
                Tid mellem ny load (sek.)
            </h3>
        </td>
    </tr>
    <tr>
        <td>
            &nbsp;<input name="titel0" size="15">
        </td>
        <td>
            &nbsp;<input name="link0" size="50">
        </td>
        <td>
            &nbsp;<input name="tid0" size="5" style="text-align:right">&nbsp;s. -- næste om:&nbsp;<span id="minSpan0"></span>
        </td>
    </tr>
    <tr>
        <td>
            &nbsp;<input name="titel1" size="15">
        </td>
        <td>
            &nbsp;<input name="link1" size="50">&nbsp;
        </td>
        <td>
            &nbsp;<input name="tid1" size="5"  style="text-align:right">&nbsp;s. -- næste om:&nbsp;<span id="minSpan1"></span>
        </td>
    </tr>
    <tr>
        <td>
            &nbsp;<input name="titel2" size="15">
        </td>
        <td>
            &nbsp;<input name="link2" size="50">&nbsp;
        </td>
        <td>
            &nbsp;<input name="tid2" size="5"  style="text-align:right">&nbsp;s. -- næste om:&nbsp;<span id="minSpan2"></span>
        </td>
    </tr>
    <tr>
        <td>
            &nbsp;<input name="titel3" size="15">
        </td>
        <td>
            &nbsp;<input name="link3" size="50">&nbsp;
        </td>
        <td>
            &nbsp;<input name="tid3" size="5"  style="text-align:right">&nbsp;s. -- næste om:&nbsp;<span id="minSpan3"></span>
        </td>
    </tr>
    <tr>
        <td>
            &nbsp;<input name="titel4" size="15">
        </td>
        <td>
            &nbsp;<input name="link4" size="50">&nbsp;
        </td>
        <td>
            &nbsp;<input name="tid4" size="5"  style="text-align:right">&nbsp;s. -- næste om:&nbsp;<span id="minSpan4"></span>
        </td>
    </tr>
    <tr>
        <td>&nbsp;</td>
        <td colspan="2">
            <input type="button" value="Start ny" onclick="startNyTael()">&nbsp;&nbsp;<input type="button" value="Stop opdatering" onclick="stopTael()">&nbsp;&nbsp;<input type="button" value="checkUrl" onclick="this.value=checkUrl(this.form.link4.value)">
</table>
</form>
</body>
</html>

-- den indeholder så også at siderne opdateres udfra valgte intervaller, et simpel check af urler og forskellige andre ting ...
Avatar billede speedy_2003 Nybegynder
06. december 2004 - 22:02 #4
da der ikke er kommet et krav på et svar eller en svar som jeg søger så vil jeg lukke spørgsmålet...
Avatar billede olebole Juniormester
06. december 2004 - 22:20 #5
aha ...
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester