Avatar billede chrisscan Juniormester
30. oktober 2004 - 20:11 Der er 23 kommentarer og
1 løsning

Sortering af indhold i kolonne (HTML) java eller hvad ved jeg

Hej eksperter.

På denne side: http://www.birds-of-denmark.dk/special_pages.htm kunne jeg godt tænke mig, at man kunne sortere de enkelte kolonner alfabetisk efter navn på forskellige sprog. Det skal være hele rækken der flyttes, da hver fugl har sin egen række. Håber ikke det er noget med asp, php eller ?

CK
Avatar billede olebole Juniormester
31. oktober 2004 - 10:50 #1
<ole>

Du skriver dette i din haed-sektion:

-------------- snip -------------

<script type="text/JavaScript">
var d=document;
function gE(id){return d.getElementById(id)}
function gA(o,tag){return o.getElementsByTagName(tag)}
function clArr(a){var aa=[];for(var i=0;i<a.length;i++){aa.push(a[i])};return aa}

var aBirdData = [];
var sortInx = 0;
var actSortInx = 0;
function sortBirds(td) {
    var birdTbl, aTblRows, aFirstRowTds, firstRowHtml, aDataClone, parTd, aTmp=[];
    birdTbl = gE("birdTbl");
    aTblRows = gA(birdTbl, "TR");
    firstRowHtml = aTblRows[0].innerHTML;
    aFirstRowTds = td.parentNode.getElementsByTagName("TD");
    parTd = birdTbl.parentNode;
    tblTag = parTd.innerHTML.match(/<table[^>]*>/i);
    aTmp.push(tblTag);
    aTmp.push("<tr>" + firstRowHtml + "</tr>");
    for (i=0; i<aFirstRowTds.length; i++) {
        if (aFirstRowTds[i]==td) {
            sortInx = i;
            break;
        }
    }
    if (actSortInx==sortInx) {
        for (i=aTblRows.length-1; i>0; i--) {
            aTmp.push("<tr>" + aTblRows[i].innerHTML + "</tr>");
        }
    } else {
        aDataClone = clArr(aBirdData);
        aDataClone.sort(mySort);
        for (i=0; i<aDataClone.length; i++) {
            aTmp.push("<tr>" + aDataClone[i][0] + "</tr>");
        }
    }
    aTmp.push("</table>");
    parTd.innerHTML = aTmp.join("");
    actSortInx = sortInx;
}
function mySort(a, b) {
    if (a[sortInx+1]==""&&b[sortInx+1]!="") return 1;
    if (a[sortInx+1]!=""&&b[sortInx+1]=="") return -1;
    return (a[sortInx+1]<b[sortInx+1])? -1 : (a[sortInx+1]>b[sortInx+1])? 1 : 0;
}
window.onload = function() {
    var birdTbl, aBirdRows, aTmpRowTds, aTmp, sTmp;
    birdTbl = document.getElementById("birdTbl");
    aBirdRows = birdTbl.getElementsByTagName("TR");
    for (i=1; i<aBirdRows.length; i++) {
        aTmpRowTds = aBirdRows[i].getElementsByTagName("TD");
        aTmp = [aBirdRows[i].innerHTML];
        for (j=0; j<aTmpRowTds.length; j++) {
            sTmp = aTmpRowTds[j].innerHTML;
            sTmp = sTmp.replace(/<[^>]*>|\r|\n|&nbsp;/g, "");
            aTmp.push(sTmp);
        }
        aBirdData.push(aTmp);
    }
}
</script>

-------------- snip -------------

Så skriver du toppen af din indertabel om til:

        <table id="birdTbl" border="2" width="100%" bgcolor="#FFFFF0" style="border-collapse: collapse" bordercolor="#111111" cellpadding="0" cellspacing="0">
          <tr>
            <td width="15%" align="center"><b><font size="5">Picture<br>
              &nbsp;/ Link</font></b></td>
            <td width="15%" align="center"><b><font size="3">Song</font></b></td>
            <td width="20%" align="center" title="Click to sort" style="cursor:pointer" onclick="sortBirds(this)"><b><font size="5">Latin</font></b></td>
            <td width="20%" align="center" title="Click to sort" style="cursor:pointer" onclick="sortBirds(this)"><b><font size="5">English</font></b></td>
            <td width="20%" align="center" title="Click to sort" style="cursor:pointer" onclick="sortBirds(this)"><b><font size="5">Swedish</font></b></td>
            <td width="20%" align="center" title="Click to sort" style="cursor:pointer" onclick="sortBirds(this)"><b><font size="5">Danish</font></b></td>
          </tr>


/mvh
</bole>
Avatar billede chrisscan Juniormester
31. oktober 2004 - 15:12 #2
Hej Ole

Det ser spændæende ud, glæder mig til at prøve - måske senere i dag.

Points følger når det virker..

CK
Avatar billede chrisscan Juniormester
31. oktober 2004 - 17:28 #3
Hej Ole

Tak for dit store arbejde. Jeg har lavet det som du skriver (tror jeg da nok) men det virker ikke. Prøv nedenstående link

http://www.birds-of-denmark.dk/special_pages-test.htm

CK
Avatar billede olebole Juniormester
31. oktober 2004 - 19:26 #4
Oooops ... jeg havde ikke set, du allerede havde én onload-handler:
  <body background="Elements/flagbaknystor2ba.jpg" style="color: #006600" onload="dynAnimation()">

Den skal flyttes, så tag'et ser sådan ud:
  <body background="Elements/flagbaknystor2ba.jpg" style="color: #006600">

Dernæst skal onload-delen i scriptet se sådan ud:

window.onload = function() {
    var birdTbl, aBirdRows, aTmpRowTds, aTmp, sTmp;
    birdTbl = document.getElementById("birdTbl");
    aBirdRows = birdTbl.getElementsByTagName("TR");
    for (i=1; i<aBirdRows.length; i++) {
        aTmpRowTds = aBirdRows[i].getElementsByTagName("TD");
        aTmp = [aBirdRows[i].innerHTML];
        for (j=0; j<aTmpRowTds.length; j++) {
            sTmp = aTmpRowTds[j].innerHTML;
            sTmp = sTmp.replace(/<[^>]*>|\r|\n|&nbsp;/g, "");
            aTmp.push(sTmp);
        }
        aBirdData.push(aTmp);
    }
    dynAnimation();
}

Som du kan se, har jeg blot flyttet kaldet til 'dynAnimation()'  :)
/mvh
Avatar billede chrisscan Juniormester
31. oktober 2004 - 23:14 #5
Hej igen.

Jeg har erstattet window.onlad-delen i scriptet og erstatter:

<body background="Elements/flagbaknystor2ba.jpg" style="color: #006600"
onload="dynAnimation()" language="Javascript1.2">  med:
<body background="Elements/flagbaknystor2ba.jpg" style="color: #006600">

men når jeg gemmer sætter FP linien på igen:
onload="dynAnimation()" language="Javascript1.2"

Hvad er det jeg har sat til "dynAnimation" ? Er det noget med min hoverknapper i bunden eller hvad skal jeg fjerne/ændre for at få det til at virke. Jeg gør det naturligvis i HTML visning. Jeg skal åbenbart ha' FP til at fjerne det, der bruger "dynAnimation" ?

CK


Men når jeg gemmer, sætter FP automatisk
Avatar billede chrisscan Juniormester
31. oktober 2004 - 23:16 #6
Sidste linie er er fejl

CK
Avatar billede olebole Juniormester
01. november 2004 - 02:28 #7
Aner ikke, hvad det er FP laver. Det er der generelt ikke mange, der ved/forstår  :)

FP er herostratisk berømt for at fucke al god kode op, så jeg kan på det varmeste anbefale dig at skifte til et andet program. Man skal bikse og bakse med programmets indstillinger for at få det til at skrive kode, der ikke er katastrofal. Det bedste, man kan 'lære' det, er at skrive dårlig kode.

Prøv evt. at kikke på et par danske editorer:
  TSW WebCoder:  http://www.tsw.dk/

  Stone's WebWriter: http://www.webwriter.dk/

Den første minder på mange måder om MacroMedia's HomeSite og er faktisk temmelig god.
Den anden er jeg vist en af de få, der ikke har prøvet - men det siges, den er meget god. Det, jeg har set af dens kode, har dog ikke været helt overbevisende. Jeg ved dog ikke, om evt. nyere versioner skriver pænere.
Avatar billede olebole Juniormester
01. november 2004 - 02:39 #8
PS: Jo, det er din knap forneden, det script-kald hænger sammen med. Kast den knap ad H...... til - download TSW WebCoder - så skal jeg nok vise dig, hvordan du laver en knap med 3% af den kode, der bliver brugt nu  ;o)
Avatar billede olebole Juniormester
01. november 2004 - 05:25 #9
Copy/paste disse tre filer og læg dem ved siden af hinanden:

------------------ birds.css - START --------------------
body, html {
    height: 100%;
    margin: 0px;
    padding: 0px;
}
body {
    background-image: url('http://www.birds-of-denmark.dk/Elements/flagbaknystor2ba.jpg');
    text-align: center;
}
.borderDiv {
    width: 80%;
    background-color: white;
    border: 1px solid black;
    padding: 1px;
    margin: 50px auto;
}
#birdTbl {
    width: 100%;
    background-color: white;
    border: 2px solid black;
    border-width: 2px 1px 1px 2px;
}
#birdTbl th, #birdTbl td {
    height: 52px;
    font-family: 'times new roman', serif;
    color: #008000;
    border-top: 0px none;
    border-right: 1px solid black;
    border-bottom: 1px solid black;
    border-left: 0px none;
}
#birdTbl th {
    font-size: 24px;
}
#birdTbl td {
    font-size: 14px;
    font-weight: bold;
}
#birdTbl a {
    color: #009900;
    text-decoration: none;
}
#birdTbl a:visited {
    color: #009900;
    text-decoration: none;
}
#birdTbl a:hover {
    color: #009900;
    text-decoration: underline;
}
.headDiv {
    color: white;
    font-family: 'times new roman', serif;
    font-size: 24px;
    margin-top: 115px;
}
.smallTxt {
    font-family: arial, verdana, sans-serif;
    font-size: 11px;
    font-weight: normal;
}
.footer {
    width: 80%;
    color: #E3D6BB;
    font-family: 'times new roman', serif;
    font-size: 18px;
    font-weight: bold;
    margin: 0px auto;
    padding-bottom: 200px;
}
.copyright {
    font-size: 14px;
    margin: 40px 0px;
}
------------------ birds.css - SLUT --------------------

------------------ birds.js - START --------------------
var d=document;
function gE(id){return d.getElementById(id)}
function gA(o,tag){return o.getElementsByTagName(tag)}
function clArr(a){var aa=[];for(var i=0;i<a.length;i++){aa.push(a[i])};return aa}

var aBirdData = [];
var sortInx = 0;
var actSortInx = 0;
var loaded = false;
function sortBirds(td) {
    var birdTbl, aTblRows, aFirstRowTds, firstRowHtml, aDataClone, parTd, aTmp=[];
    if (!loaded) {
        alert("Please wait untill the document is finished loading.");
        return;
    }
    birdTbl = gE("birdTbl");
    aTblRows = gA(birdTbl, "TR");
    firstRowHtml = aTblRows[0].innerHTML;
    aFirstRowTds = td.parentNode.getElementsByTagName("TH");
    parTd = birdTbl.parentNode;
    tblTag = parTd.innerHTML.match(/<table[^>]*>/i);
    aTmp.push(tblTag);
    aTmp.push("<tr>" + firstRowHtml + "</tr>");
    for (i=0; i<aFirstRowTds.length; i++) {
        if (aFirstRowTds[i]==td) {
            sortInx = i;
            break;
        }
    }
    if (actSortInx==sortInx) {
        for (i=aTblRows.length-1; i>0; i--) {
            aTmp.push("<tr>" + aTblRows[i].innerHTML + "</tr>");
        }
    } else {
        aDataClone = clArr(aBirdData);
        aDataClone.sort(mySort);
        for (i=0; i<aDataClone.length; i++) {
            aTmp.push("<tr>" + aDataClone[i][0] + "</tr>");
        }
    }
    aTmp.push("</table>");
    parTd.innerHTML = aTmp.join("");
    actSortInx = sortInx;
}
function mySort(a, b) {
    if (a[sortInx+1]==""&&b[sortInx+1]!="") return 1;
    if (a[sortInx+1]!=""&&b[sortInx+1]=="") return -1;
    return (a[sortInx+1]<b[sortInx+1])? -1 : (a[sortInx+1]>b[sortInx+1])? 1 : 0;
}
window.onload = function() {
    var birdTbl, aBirdRows, aTmpRowTds, aTmp, sTmp;
    birdTbl = document.getElementById("birdTbl");
    aBirdRows = birdTbl.getElementsByTagName("TR");
    for (i=1; i<aBirdRows.length; i++) {
        aTmpRowTds = aBirdRows[i].getElementsByTagName("TD");
        aTmp = [aBirdRows[i].innerHTML];
        for (j=0; j<aTmpRowTds.length; j++) {
            sTmp = aTmpRowTds[j].innerHTML;
            sTmp = sTmp.replace(/<[^>]*>|\r|\n|&nbsp;/g, "");
            aTmp.push(sTmp);
        }
        aBirdData.push(aTmp);
    }
    loaded = true;
}
------------------ birds.js - SLUT --------------------

------------- special_pages.htm - START ---------------
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
    "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
    <title>Special pages Pages - contains big pictures for one specific bird</title>
<link href="birds.css" rel="stylesheet" type="text/css">
<script type="text/JavaScript" src="birds_sort.js"></script>
</head>
<body>

<div class="headDiv">Newest will always be in top</div>

<div class="borderDiv">
<table id="birdTbl" cellspacing="0" cellpadding="0" border="0">
<tr>
    <th style="width:10%;font-size:14px">Linked<br>image</th>
    <th style="width:10%;font-size:14px">Song</th>
    <th title="Click to sort" style="cursor:pointer" onclick="sortBirds(this)">Latin</th>
    <th title="Click to sort" style="cursor:pointer" onclick="sortBirds(this)">English</th>
    <th title="Click to sort" style="cursor:pointer" onclick="sortBirds(this)">Swedish</th>
    <th title="Click to sort" style="cursor:pointer" onclick="sortBirds(this)">Danish</th>
</tr>
<tr>
    <td><a href="soelvmaage-finsk.htm"><img border="0" src="Special-images/special-soelvmaage-fi.jpg" width="50" height="50"></a></td>
    <td><a href="Sounds/Larus.argentatus1.wav"><img border="0" src="Elements/g.gif" width="8" height="21"></a></td>
    <td>Larus argentatus</td>
    <td>Herring Gull</td>
    <td>Gråtrut</td>
    <td>Sølvmåge</td>
</tr>
<tr>
    <td><a href="bonaparte.htm"><img border="0" src="Special-images/specialbonaparte.jpg" width="50" height="50"></a></td>
    <td>&nbsp;</td>
    <td>Larus philadelphia</td>
    <td>Bonaparte’s Gull</td>
    <td>Svartnäbbad Skrattmås</td>
    <td>Bonapartemåge</td>
</tr>
<tr>
    <td><a href="fjordterne.htm"><img border="0" src="Special-images/specialfjordterne.jpg" width="50" height="50"></a></td>
    <td><a href="Sounds/FJORDTRN.WAV"><img border="0" src="Elements/g.gif" width="8" height="21"></a></td>
    <td><a href="fjordterne.htm">Sterna hirundo</a></td>
    <td><a href="fjordterne.htm">Common Tern</a></td>
    <td><a href="fjordterne.htm">Fisktärna</a></td>
    <td><a href="fjordterne.htm">Fjordterne</a></td>
</tr>
<tr>
    <td><a href="havterne.htm"><img border="0" src="Special-images/specialhavterne.jpg" width="50" height="50"></a></td>
    <td>&nbsp;</td>
    <td><a href="havterne.htm">Sterna paradisaea</a></td>
    <td><a href="havterne.htm">Arctic Tern</a></td>
    <td><a href="havterne.htm">Silvertärna</a></td>
    <td><a href="havterne.htm">Havterne</a></td>
</tr>
<tr>
    <td><a href="stork-hvid.htm"><img border="0" src="Special-images/specialhvidstork.jpg" width="50" height="50"></a></td>
    <td>&nbsp;</td>
    <td><a href="stork-hvid.htm">Ciconia ciconia</a></td>
    <td><a href="stork-hvid.htm">White Stork -<br>beeing ringed</a></td>
    <td><a href="stork-hvid.htm">Vit stork</a></td>
    <td><a href="stork-hvid.htm">Hvid stork</a></td>
</tr>
<tr>
    <td><a href="amsoelvmaage.htm"><img border="0" src="Special-images/specialamsoelvmaage.jpg" width="50" height="50"></a></td>
    <td>&nbsp;</td>
    <td><ahref="amsoelvmaage.htm">Larus argentatus / .... </a></td>
    <td><a href="amsoelvmaage.htm">Dark-tailed Herring Gull</a></td>
    <td><a href="amsoelvmaage.htm">Gråtrut</a></td>
    <td><a href="amsoelvmaage.htm">Mørkhalet Sølvmåge</a></td>
</tr>
<tr>
    <td><a href="sanglaerke.htm"><img border="0" src="Special-images/specialsanglaerke.jpg" width="50" height="33"></a></td>
    <td><a href="Sounds/alauda-arvensis.wav"><img border="0" src="Elements/g.gif" width="8" height="21"></a></td>
    <td>Alauda arvensis</td>
    <td>Skylark</td>
    <td>Sånglärka</td>
    <td>Sanglærke</td>
</tr>
<tr>
    <td><a href="sorthovedet_maage-2.htm"><img border="0" src="Special-images/special-sorthovedet-2.jpg" width="50" height="50"></a><br><span class="smallTxt">Page 2</span></td>
    <td><a href="Sounds/Larus%20melanocephalus.wav"><img border="0" src="Elements/g.gif" width="8" height="21"></a></td>
    <td>Larus melanocephalus</td>
    <td>Mediterranean Gull</td>
    <td>Svarthuvad mås</td>
    <td>Sorthovedet måge</td>
</tr>
<tr>
    <td><a href="http://hjem.get2net.dk/bofd/gulls.htm"><img border="0" src="Elements/henvisning01.jpg" width="50" height="46"></a></td>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
    <td>The gulls of Denmark</td>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
</tr>
<tr>
    <td><a href="sortrygget-vipst.htm"><img border="0" src="Special-images/special-sortrygget-vipst.jpg" width="50" height="50"></a></td>
    <td>&nbsp;</td>
    <td>Motacilla alba yarrelli</td>
    <td>British Isles White Wagtail</td>
    <td>Südesürla/<br>Südessürla</td>
    <td>Sortrygget (hvid) Vipstjert</td>
</tr>
<tr>
    <td><a href="musvaage-buteo-buteo.htm"><img border="0" src="Special-images/specialmusvaage.jpg" width="50" height="50"></a></td>
    <td><a href="Sounds/Buteo.buteo[1].wav"><img border="0" src="Elements/g.gif" width="8" height="21"></a></td>
    <td>Buteo buteo</td>
    <td>Buzzard</td>
    <td>Ormvråk</td>
    <td>Musvåge</td>
</tr>
<tr>
    <td><a href="fiskehejre-Ardea_cinerea.htm"><img border="0" src="Special-images/specialfiskehejre.jpg" width="32" height="50"></a></td>
    <td><a href="Sounds/Ardea.cinerea.wav"><img border="0" src="Elements/g.gif" width="8" height="21"></a></td>
    <td>Ardea cinerea</td>
    <td>Heron</td>
    <td>Häger</td>
    <td>Fiskehejre</td>
</tr>
<tr>
    <td><a href="lille-lappedykker.htm"><img border="0" src="Special-images/special-lille-lappedykker.jpg" width="50" height="50"></a></td>
    <td>&nbsp;</td>
    <td>Podiceps ruficollis</td>
    <td>Little Grebe</td>
    <td>Smådopping</td>
    <td>Lille lappedykker</td>
</tr>
<tr>
    <td><a href="hvidvingetkorsnaeb.htm"><img border="0" src="Special-images/specialHvidvingeto2.jpg" width="50" height="49"></a></td>
    <td><a href="Sounds/Loxia%20curvirostra.wav"><img border="0" src="Elements/g.gif" width="8" height="21"></a></td>
    <td>Loxia leucoptera</td>
    <td>White-winged Crossbill</td>
    <td>Bändelkorsnäbb</td>
    <td>Hvidvinget<br>korsnæb</td>
</tr>
<tr>
    <td><a href="Stellersand.htm"><img border="0" src="Special-images/specialStellerand12.jpg" width="50" height="51"></a></td>
    <td>&nbsp;</td>
    <td>Polysticta stelleri</td>
    <td>Stellers Eider</td>
    <td>Alförrädare</td>
    <td>Stellersand</td>
</tr>
<tr>
    <td><a href="skaerpiper.htm"><img border="0" src="Special-images/special-skaerpiber-2.jpg" width="50" height="50"></a></td>
    <td>&nbsp;</td>
    <td>Anthus petrosus</td>
    <td>Rock Pipit</td>
    <td>Skärpiplärka</td>
    <td>Skærpiber</td>
</tr>
<tr>
    <td><a href="kvaerkerfinke.htm"><img border="0" src="Special-images/Kvaekerfinke_special.jpg" width="50" height="50"></a></td>
    <td><a href="Sounds/Fringilla%20montifringilla.wav"><img border="0" src="Elements/g.gif" width="8" height="21"></a></td>
    <td>Fringilla montifringilla</td>
    <td>Brambling</td>
    <td>Bergfink</td>
    <td>Kvækerfinke</td>
</tr>
<tr>
    <td><a href="toplaerke-Galerida%20cristata.htm"><img border="0" src="Special-images/specialtoplaerke334.jpg" alt="Click for big images of Galerida cristata" width="50" height="50"></a></td>
    <td><a href="Sounds/Galerida%20cristata.wav"><img border="0" src="Elements/g.gif" width="8" height="21"></a></td>
    <td>Galerida cristata</td>
    <td>Crested Lark</td>
    <td>Tofslärka</td>
    <td>Toplærke</td>
</tr>
<tr>
    <td><a href="pungmejse-remiz_pendulinus.htm"><img border="0" src="Special-images/specialpungmejse.jpg" alt="Click for big images of Remiz pendulinus " width="50" height="50"></a></td>
    <td><a href="Sounds/Remiz%20pendulinus.wav"><img border="0" src="Elements/g.gif" width="8" height="21"></a></td>
    <td>Remiz pendulinus</td>
    <td>Eurasian Penduline Tit</td>
    <td>Pungmes</td>
    <td>Pungmejse</td>
</tr>
<tr>
    <td><a href="lille-snegaas-anser-caerulesccens.htm"><img border="0" src="Special-images/specialsnegaas.jpg" alt="Click for big images of Anser caerulescens caerulescens" width="50" height="50"></a></td>
    <td>&nbsp;</td>
    <td>Anser caerulescens caerulescens</td>
    <td>Snow Goose</td>
    <td>Snögås</td>
    <td>Lille snegås</td>
</tr>
<tr>
    <td><a href="graamaage-larus-hyperboreus.htm"><img border="0" src="Special-images/specialgraamaage.jpg" alt="Click for big images of Larus hyperboreus " width="50" height="49"></a></td>
    <td><a href="Sounds/Larus%20hyperboreus.wav"><img border="0" src="Elements/g.gif" width="8" height="21"></a></td>
    <td>Larus hyperboreus</td>
    <td>Glaucous Gull</td>
    <td>Vittrut</td>
    <td>Gråmåge</td>
</tr>
<tr>
    <td><a href="hvidvinget-maage-larus_glaucoides.htm"><img border="0" src="Special-images/Specialhvidvinget.jpg" alt="Click for big images of Larus glaucoides " width="50" height="49"></a></td>
    <td><a href="Sounds/Larus%20glaucoides.wav"><img border="0" src="Elements/g.gif" width="8" height="21"></a></td>
    <td>Larus glaucoides</td>
    <td>Iceland Gull</td>
    <td>Vitvingad Trut</td>
    <td>Hvidvinget måge</td>
</tr>
<tr>
    <td><a href="mallemuk-fulmarus-glacialis.htm"><img border="0" src="Special-images/specialmallemuk.jpg" alt="Click for big images of Fulmarus glacialis" width="50" height="50"></a></td>
    <td><a href="Sounds/Fulmarus%20glacialis.wav"><img border="0" src="Elements/g.gif" width="8" height="21"></a></td>
    <td>Fulmarus glacialis</td>
    <td>Northern Fulmar</td>
    <td>Stormfågel</td>
    <td>Mallemuk</td>
</tr>
<tr>
    <td><a href="skarv-phalacrocorax_carbo.htm"><img border="0" src="Special-images/specialSKARV.jpg" width="50" height="42" alt="Click for big images of Phalacrocorax carbo "></a></td>
    <td><a href="Sounds/Phalacrocorax%20carbo.wav"><img border="0" src="Elements/g.gif" width="8" height="21"></a></td>
    <td>Phalacrocorax carbo</td>
    <td>Great Cormorant</td>
    <td>Storskarv</td>
    <td>Skarv</td>
</tr>
<tr>
    <td><a href="isfugl.htm"><img border="0" src="Special-images/specialisfugl.jpg" width="50" height="49"></a></td>
    <td><a href="Sounds/Alcedo.atthis.wav"><img border="0" src="Elements/g.gif" width="8" height="21"></a></td>
    <td>Alcedo atthis</td>
    <td>Kingfisher</td>
    <td>Kungfiskare</td>
    <td>Isfugl</td>
</tr>
<tr>
    <td><a href="lille-korsnaeb.htm"><img border="0" src="Special-images/specialkorsnaeb.jpg" width="50" height="46"></a></td>
    <td><a href="Sounds/Loxia%20curvirostra.wav"><img border="0" src="Elements/g.gif" width="8" height="21"></a></td>
    <td>Loxia curvirostra</td>
    <td>Crossbill</td>
    <td>Mindre Korsnäbb</td>
    <td>Lille korsnæb</td>
</tr>
<tr>
    <td><a href="soekonge.htm"><img border="0" src="Special-images/specialsoekonge.jpg" width="50" height="50"></a></td>
    <td><a href="Sounds/Alle%20alle.wav"><img border="0" src="Elements/g.gif" width="8" height="21"></a></td>
    <td>Alle alle&nbsp;</td>
    <td>Little Auk (Dovekie)</td>
    <td>Alkekung</td>
    <td>Søkonge</td>
</tr>
<tr>
    <td><a href="kaspisk-steppemaage.htm"><img border="0" src="Special-images/specialsteppemaage.jpg" width="48" height="50"></a></td>
    <td>&nbsp;</td>
    <td>Larus chaninnans chaninnans</td>
    <td>Black Sea Yellowlegged Gull</td>
    <td>Gulfotad trut</td>
    <td>Steppemåge</td>
</tr>
<tr>
    <td><a href="birds-of-the-wadden-sea.htm"><img border="0" src="Special-images/specialvadehavet.jpg" width="50" height="50"></a></td>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
    <td>Birds of the Wadden Sea</td>
    <td>&nbsp;</td>
    <td><p>Fugle omkring vadehavet</p></td>
</tr>
<tr>
    <td><a href="knortegaas.htm"><img border="0" src="Special-images/specialknortgaas.jpg" width="50" height="50"></a></td>
    <td><a href="Sounds/Branta%20bernicla.wav"><img border="0" src="Elements/g.gif" width="8" height="21"></a></td>
    <td>Branta bernicla</td>
    <td>Brent Goose</td>
    <td>Prutgås</td>
    <td>Knortegås</td>
</tr>
<tr>
    <td><a href="bramgaas.htm"><img border="0" src="Special-images/specialbramgaas.jpg" width="50" height="52"></a></td>
    <td><a href="Sounds/Branta.leucopsis.wav"><img border="0" src="Elements/g.gif" width="8" height="21"></a></td>
    <td>Branta leucopsis</td>
    <td>Barnacle Goose</td>
    <td>Vitkindad gås</td>
    <td>Bramgås</td>
</tr>
<tr>
    <td><a href="amerikansk-rordrum-dolium-caeruleum.htm"><img border="0" src="Special-images/specialtoende.jpg" width="50" height="50"></a></td>
    <td>&nbsp;</td>
    <td>Dolium caeruleum</td>
    <td>American Bittern</td>
    <td>&nbsp;</td>
    <td>Amerikansk rørdrum</td>
</tr>
<tr>
    <td><a href="vandrikse_rallus_aquaticus.htm"><img border="0" src="Special-images/specialvandrikse.jpg" width="50" height="46"></a></td>
    <td><a href="Sounds/rallus-aquaticus.wav"><img border="0" src="Elements/g.gif" width="8" height="21"></a></td>
    <td>Rallus aquaticus</td>
    <td>Water Rail</td>
    <td>Vattenrall</td>
    <td>Vandrikse</td>
</tr>
<tr>
    <td><a href="tejst_cepphus_grylle_black_guillemot.htm"><img border="0" src="Special-images/specialtejst.jpg" width="50" height="50"></a></td>
    <td><a href="Sounds/Cepphus%20grylle.wav"><img border="0" src="Elements/g.gif" width="8" height="21"></a></td>
    <td>Cepphus grylle</td>
    <td>Black Guillemot</td>
    <td>Tobisgrissla</td>
    <td>Tejst</td>
</tr>
<tr>
    <td><a href="Ride.htm"><img border="0" src="Special-images/specialride.jpg" width="50" height="50"></a></td>
    <td><a href="Sounds/Rissa%20tridactyla.wav"><img border="0" src="Elements/g.gif" width="8" height="21"></a></td>
    <td>Rissa tridactyla</td>
    <td>Black-legged Kittiwake</td>
    <td>Tretåig Mås</td>
    <td>Ride</td>
</tr>
<tr>
    <td><a href="roedrygget-tornskade.htm"><img border="0" src="Special-images/specialroedrygget.jpg" width="50" height="49"></a></td>
    <td><a href="Sounds/Lanius%20collurio.wav"><img border="0" src="Elements/g.gif" width="8" height="21"></a></td>
    <td>Lanius collurio</td>
    <td>Red-backed Shrike</td>
    <td>Tornskata</td>
    <td>Rødrygget tornskade</td>
</tr>
<tr>
    <td><a href="knopsvane-cygnus%20olor.htm"><img border="0" src="Special-images/specialknopsvan.jpg" width="50" height="50"></a></td>
    <td><a href="Sounds/Cygnus.olor.wav"><img border="0" src="Elements/g.gif" width="8" height="21"></a></td>
    <td>Cygnus olor</td>
    <td>Mute swan</td>
    <td>Knölsvan</td>
    <td>Knopsvane</td>
</tr>
<tr>
    <td><a href="vendehals__jynx_torquilla_.htm"><img border="0" src="Special-images/specialvendehals.jpg" width="50" height="49"></a></td>
    <td><a href="Sounds/Jynx%20torquilla.wav"><img border="0" src="Elements/g.gif" width="8" height="21"></a></td>
    <td>Jynx torquilla</td>
    <td>Eurasian Wryneck</td>
    <td>Göktyta</td>
    <td>Vendehals</td>
</tr>
<tr>
    <td><a href="kattegatsildemaage.htm"><img border="0" src="Special-images/specialsidelmaage.jpg" width="50" height="50"></a></td>
    <td><a href="Sounds/Larus%20fuscus.wav"><img border="0" src="Elements/g.gif" width="8" height="21"></a></td>
    <td>Larus fuscus intermedius</td>
    <td>Lesser Black-backed Gull</td>
    <td>Silltrut</td>
    <td>Sildemåge</td>
</tr>
<tr>
    <td><a href="solevhejre.htm"><img border="0" src="Special-images/specialsoelvhej.jpg" width="50" height="50"></a></td>
    <td><a href="Sounds/Egretta%20alba.wav"><img border="0" src="Elements/g.gif" width="8" height="21"></a></td>
    <td>Egretta alba</td>
    <td>Great White Egret</td>
    <td>Ägretthäger</td>
    <td>Sølvhejre</td>
</tr>
<tr>
    <td><a href="sorthalset-lappedykker.htm"><img border="0" src="Special-images/specialsorhalset.jpg" width="50" height="50"></a></td>
    <td><a href="Sounds/Podiceps%20nigricollis.wav"><img border="0" src="Elements/g.gif" width="8" height="21"></a></td>
    <td>Podiceps nigricollis &nbsp;</td>
    <td>Black-necked Grebe</td>
    <td>Svarthalsad dopping</td>
    <td>Sorthalset Lappedykker</td>
</tr>
<tr>
    <td><a href="stenpikker.htm"><img border="0" src="Special-images/specialstenpik.jpg" width="50" height="48"></a></td>
    <td><a href="Sounds/Oenanthe%20oenanthe.wav"><img border="0" src="Elements/g.gif" width="8" height="21"></a></td>
    <td>Oenanthe oenanthe</td>
    <td>Northern Wheatear</td>
    <td>Stenskvätta</td>
    <td>Stenpikker</td>
</tr>
<tr>
    <td><a href="graamaage_larus_hyperboreus.htm"><img border="0" src="Special-images/specialadultgraamaage.jpg" width="50" height="50"></a></td>
    <td><a href="Sounds/Larus%20hyperboreus.wav"><img border="0" src="Elements/g.gif" width="8" height="21"></a></td>
    <td>Larus hyperboreus</td>
    <td>Glaucous Gull</td>
    <td>Vittrut</td>
    <td>Gråmåge</td>
</tr>
<tr>
    <td><a href="gulddrossel__whites_thush_.htm"><img border="0" src="Special-images/specialgulddrossel.jpg" width="50" height="50"></a></td>
    <td>&nbsp;</td>
    <td>Zoothera dauma</td>
    <td>Whites Thush</td>
    <td>Guldtrast</td>
    <td>Gulddrossel&nbsp;</td>
</tr>
<tr>
    <td><a href="groenbenet-roerhoene.htm"><img border="0" src="Special-images/specialroerhoene.jpg" width="50" height="48"></a></td>
    <td><a href="Sounds/Gallinula%20chloropus.wav"><img border="0" src="Elements/g.gif" width="8" height="21"></a></td>
    <td>Gallinula chloropus</td>
    <td>Common Moorhen</td>
    <td>Rörhöna</td>
    <td>Grønbenet rørhøne</td>
</tr>
<tr>
    <td><a href="aegithalos_caudatus_halemejse.htm"><img border="0" src="Special-images/specialhalemejs.jpg" width="50" height="50"></a></td>
    <td><a href="Sounds/Aegithalos%20caudatus.wav"><img border="0" src="Elements/g.gif" width="8" height="21"></a></td>
    <td>Aegithalos caudatus</td>
    <td>Long-tailed Tit</td>
    <td>Stjärtmes</td>
    <td>Halemejse</td>
</tr>
<tr>
    <td><a href="calidris_alpina.htm"><img border="0" src="Special-images/specialalmryle.jpg" width="50" height="50"></a></td>
    <td><a href="Sounds/Calidris.alpina.wav"><img border="0" src="Elements/g.gif" width="8" height="21"></a></td>
    <td>Calidris alpina</td>
    <td>Dunlin</td>
    <td>Kärrsnäppa</td>
    <td>Almindelig ryle&nbsp;</td>
</tr>
<tr>
    <td><a href="egretta_garzettasilkehejre.htm"><img border="0" src="Special-images/specialsilkehejre.jpg" width="50" height="50"></a></td>
    <td><a href="Sounds/Egretta%20garzetta.wav"><img border="0" src="Elements/g.gif" width="8" height="21"></a></td>
    <td>Egretta Garzetta</td>
    <td>Little Egret</td>
    <td>Silkehäger</td>
    <td>Silkehejre</td>
</tr>
<tr>
    <td><a href="korttaaet_traeloeber.htm"><img border="0" src="Special-images/specialtraeloeb.jpg" width="50" height="50"></a></td>
    <td><a href="Sounds/Certhia.brachydactyla[1].wav"><img border="0" src="Elements/g.gif" width="8" height="21"></a></td>
    <td>Certhia brachydactyla &nbsp;</td>
    <td>Short-toed Treecreeper</td>
    <td>Trädkrypara</td>
    <td>Korttået træløber</td>
</tr>
<tr>
    <td><a href="piberne_paa_gummistranden.htm"><img border="0" src="Special-images/specialskaerpiber.jpg" width="50" height="50"></a></td>
    <td><a href="Sounds/Anthus%20spinoletta.wav"><img border="0" src="Elements/g.gif" width="8" height="21"></a></td>
    <td>Anthus spinoletta</td>
    <td>Water Pipit</td>
    <td>Vattenpiplärka</td>
    <td>Bjergpiber</td>
</tr>
<tr>
    <td><a href="rosenmaage.htm"><img border="0" src="Special-images/specialrosenmaag.jpg" width="50" height="50"></a></td>
    <td>&nbsp;</td>
    <td>Rhodostethia rosea&nbsp;</td>
    <td>Ross´s Gull</td>
    <td>Rosenmås</td>
    <td>Rosenmåge</td>
</tr>
<tr>
    <td><a href="skovhornugle.htm"><img border="0" src="Special-images/specialskovhornugle.jpg" width="50" height="50"></a></td>
    <td><a href="Sounds/Asio_otus.wav"><img border="0" src="Elements/g.gif" width="8" height="21"></a></td>
    <td>Asio otus &nbsp;&nbsp;</td>
    <td>&nbsp;</td>
    <td>Hornuggla</td>
    <td>Skovhornugle</td>
</tr>
<tr>
    <td><a href="sneugle_snowy_owl_december_1999.htm"><img border="0" src="Special-images/specialsneugle.jpg" width="50" height="50"></a></td>
    <td><a href="Sounds/Nyctea_scandiaca.wav"><img border="0" src="Elements/g.gif" width="8" height="21"></a></td>
    <td>Nyctea scandiaca</td>
    <td>Snowy Owl</td>
    <td>Fjälluggla</td>
    <td>Sneugle</td>
</tr>
<tr>
    <td><a href="strix_nebulosa_lapugle.htm"><img border="0" src="Special-images/speciallapugle.jpg" width="50" height="50"></a></td>
    <td><a href="Sounds/Strix.nebulosa.wav"><img border="0" src="Elements/g.gif" width="8" height="21"></a></td>
    <td>Strix nebulosa</td>
    <td>Great Grey Owl</td>
    <td>Lappuggla</td>
    <td>Laplandsugle</td>
</tr>
<tr>
    <td><a href="spurveugle.htm"><img border="0" src="Special-images/specialspurveugle.jpg" width="50" height="50"></a></td>
    <td><a href="Sounds/Glaucidium_passerinum.wav"><img border="0" src="Elements/g.gif" width="8" height="21"></a></td>
    <td>Glausidium passerinum</td>
    <td>Pygmy Owl</td>
    <td>Sparvuggla</td>
    <td><span lang="da">Spurve</span>ugle</td>
</tr>
<tr>
    <td><a href="natugle-strix_aluco.htm"><img border="0" src="Special-images/specialnatugle.jpg" width="50" height="50"></a></td>
    <td><a href="Sounds/Strix_aluco.wav"><img border="0" src="Elements/g.gif" width="8" height="21"></a></td>
    <td>Strix Aluco</td>
    <td>Tawny Owl</td>
    <td>Katuggla</td>
    <td>Natugle</td>
</tr>
<tr>
    <td><a href="hoegeugle_surnia_ulula.htm"><img border="0" src="Special-images/specialhoegeugle.jpg" width="50" height="50"></a></td>
    <td><a href="Sounds/Surnia%20ulula.wav"><img border="0" src="Elements/g.gif" width="8" height="21"></a></td>
    <td>Surnia ulula</td>
    <td>Northern Hawk Owl</td>
    <td>Hökuggla</td>
    <td>Høgeugle</td>
</tr>
<tr>
    <td><a href="solsort_turdus_merula.htm"><img border="0" src="Special-images/specialsolsort.jpg" width="50" height="50"></a></td>
    <td><a href="Sounds/Turdus.merula.wav"><img border="0" src="Elements/g.gif" width="8" height="21"></a></td>
    <td>Turdus merula</td>
    <td>Blackbird</td>
    <td>Koltrast</td>
    <td>Solsort</td>
</tr>
<tr>
    <td><a href="drosselroersanger.htm"><img border="0" src="Special-images/specialdrosseroersanger.jpg" width="50" height="50"></a></td>
    <td><a href="Sounds/Acrocephalus.arundinaceus.wav"><img border="0" src="Elements/g.gif" width="8" height="21"></a></td>
    <td>Acrocephalus arundinaceus</td>
    <td>Great Reed Warbler</td>
    <td>Trastsångare</td>
    <td>Drosselrørsanger</td>
</tr>
<tr>
    <td><a href="toppet_lappedykker.htm"><img border="0" src="Special-images/specialtoppetlapdyk.jpg" width="50" height="50"></a></td>
    <td><a href="Sounds/Podiceps.cristatus.wav"><img border="0" src="Elements/g.gif" width="8" height="21"></a></td>
    <td>Podiceps cristatus</td>
    <td>Great Crested Grebe</td>
    <td>Skäggdopping</td>
    <td>Toppet lappedykker</td>
</tr>
<tr>
    <td><a href="sjagger.htm"><img border="0" src="Special-images/specialsjag.jpg" width="50" height="50"></a></td>
    <td><a href="Sounds/Turdus.pilaris.wav"><img border="0" src="Elements/g.gif" width="8" height="21"></a></td>
    <td>Turdus pilaris</td>
    <td>Fieldfare</td>
    <td>Björktrast</td>
    <td>Sjagger</td>
</tr>
<tr>
    <td><a href="vandstaer-cinclus-cinclus.htm"><img border="0" src="Special-images/specialvandstaer.jpg" width="50" height="50"></a></td>
    <td><a href="Sounds/Cinclus.cinclus[1].wav"><img border="0" src="Elements/g.gif" width="8" height="21"></a></td>
    <td>Cinclus cinclus</td>
    <td>White-throated Dipper</td>
    <td>Strömstare</td>
    <td>Vandstær</td>
</tr>
<tr>
    <td><a href="sorthovedet_maage.htm"><img border="0" src="Special-images/specialsorthovedet.jpg" width="50" height="50"></a><br><span class="smallTxt">Page 1</span></td>
    <td><a href="Sounds/Larus%20melanocephalus.wav"><img border="0" src="Elements/g.gif" width="8" height="21"></a></td>
    <td>Larus melanocephalus</td>
    <td>Mediterranean Gull</td>
    <td>Svarthuvad mås</td>
    <td>Sorthovedet Måge</td>
</tr>
<tr>
    <td><a href="silkehaler-bombycilla-garrulus.htm"><img border="0" src="Special-images/specialsilkehale.jpg" width="50" height="50"></a></td>
    <td><a href="Sounds/Bombycilla.garrulus.wav"><img border="0" src="Elements/g.gif" width="8" height="21"></a></td>
    <td>Bombycilla garrulus</td>
    <td>Bohemian Waxwing</td>
    <td>Sidensvans</td>
    <td>Silkehale</td>
</tr>
<tr>
    <td><a href="oerkenstenpikker.htm"><img border="0" src="Special-images/specialoerkenstenpik.jpg" width="50" height="50"></a></td>
    <td>&nbsp;</td>
    <td>Oenanthe deserti atrogularis</td>
    <td>Desert Wheatear</td>
    <td>Örkenstenskätta</td>
    <td>Ørkenstenpikker</td>
</tr>
</table>
</div>

<div class="footer">
Do you have a link to bird songs please contact <a style="color: #E3D6BB" href="mailto:carsten@birds-of-denmark.dk">webmaster</a><br>
Are you owner of a site containing bird songs you will be credited

<div class="copyright">
All pictures and text on these pages are copyrighted to Birds of Denmark.

<br><br>

Although we have published photos and words on the web, this does not mean we have waived copyright. Copyright protections are guaranteed by Federal Law.
Commercial use of images is forbidden without explicit licensing of rights.
For commercial use contact <a style="color: #E3D6BB" href="mailto:steffen@birds-of-denmark.dk">photo editor</a>.
</div>

<a href="index.htm"><img border="0" src="Elements/home.gif"
    onmouseover="this.src='http://www.birds-of-denmark.dk/Elements/home-down.gif'"
    onmouseout="this.src='http://www.birds-of-denmark.dk/Elements/home.gif'"
    width="97" height="24"></a>
</div>

</body>
</html>
------------- special_pages.htm - SLUT ----------------

Prøv at sammenligne HTML-koderne. Så enkle kan de blive. Prøv også at højreklikke på din oprindelige fil og vælg 'Egenskaber'. Gør derefter det samme med de tre nye - og du vil se, at de er tilsammen halvt så store som din nuværende  ;o)
Med den nye kode, skulle din side også gerne se ens ud i forskellige browsere (det er absolut ikke tilfældet nu) ... men lad nu være med at åbne den i FrontPage, Pleeeaaaase ...!!!  :)

Så får du zq heller ikke mere for dén 25-øre  :D
/mvh
Avatar billede olebole Juniormester
01. november 2004 - 05:26 #10
PS: og jeg undskylder overfor E, at jeg propper databasen  ;D
Avatar billede olebole Juniormester
01. november 2004 - 05:28 #11
PPS: Jeg har i øvrigt lavet et lille check, der sikrer, at siden er helt loaded, før man kan sortere tabellen. Så undgår du JavaScript-fejl.
Avatar billede chrisscan Juniormester
01. november 2004 - 17:45 #12
Uha uha - imponerende arbejde. 100000.. tak for dit arbejde.
Jeg har fjernet den dumme mouseover og nu virker det perfekt med det kortere script. Da siden jo hele tiden bliver opdateret, vil nye linier automatisk komme med i sorteringen ? (med det korte script).

Det check, der sikrer, at siden er helt loaded... hvor er det ?

Jeg får iøvrigt java fejl i statuslinien, men det virker alligevel.

http://www.birds-of-denmark.dk/special_pages-test.htm

Ville ønske jeg kunne tømme pointsposen, men man kan jo ikke give mere end de 200.

CK
Avatar billede olebole Juniormester
01. november 2004 - 22:19 #13
Lad os lige tage 'fejl-fælden' først. Jeg har oprettet en variabel 'loaded', som jeg fra starten sætter til 'false' (i toppen af scriptet). I begyndelsen af sorterings-funktionen spørger jeg, om 'loaded' stadig er 'false' med dette udtryk:

    if (!loaded) {
        alert("Please wait untill the document is finished loading.");
        return;
    }

Jeg kunne også have skrevet:

    if (loaded==false) {
        alert("Please wait untill the document is finished loading.");
        return;
    }

... det er bare to måder at skrive det samme på. Er 'loaded' endnu ikke sat til til 'true', får brugeren en lille advarsel og scriptet kører ikke længere.
Nederst og sidst blandt de ting, der sker på sidens onload, sætter jeg 'loaded' til true, hvorefter sortering vil være 'tilladt'.
Du kan bare kopiere indholdet af JavaScript-filen, jeg skrev senest - og sætte det ind mellem de JavaScript-tags, du har i din nuværende fil. Så skulle det gerne køre som barnefingre gennem en bakke Kærgården.

Det er helt fint med 200 points, som jo er det maximale antal. Det er _rigtig_ mange og bør kun uddeles ved meget svære og/eller arbejdskrævende besvarelser. Til gengæld må du finde dig i, jeg ivrigt pusher en bedre editor - og jeg så stadig meget gerne, du vælger en bedre  ;o)
/mvh
Avatar billede olebole Juniormester
01. november 2004 - 22:24 #14
PS: Arbejdet med at rense HTML'en op var nu ikke så stort, som det ser ud. Jeg har skrevet et lille Win-program, der åbner en HTML-fil og renser 99% af HTML'en op til HTML4.01-Trans eller XHTML1.0-Strict - og skriver en ny. Det hjælper jo en hel del på tingene  :)
Avatar billede olebole Juniormester
01. november 2004 - 22:39 #15
PPS: Du spurgte vist, om det betyder noget, du smider flere linier på ... det gør det ikke. Det tager scriptet højde for.

I øvrigt, så er det de færreste gratis editorer, hvor du arbejder i WYSIWYG (What You See Is What You Get). Så skal du nok investere i en DreamWeaver, som skriver rigtig pæn kode.
Skriver du i kode-view, er det nu ikke så svært. Hver ny tabelrække består af:
  <tr>
    <td></td>
    <td></td>
    <td></td>
    <td></td>
    <td></td>
    <td></td>
  </tr>
med et billede eller et link i hver <td></td>. Det kan du ret hurtigt lære at skrive i hånden. Hvis en celle skal være tom, skriver du <td>&nbsp;</td>. En celle må nemlig ikke være tom - og '&nbsp;' er et mellemrum.
Skulle du støde på vanskeligheder, kan du sagtens få hjælp på Eksperten.

Prøv det. Du vil blive glad for det i længden ... og så kan det faktisk være squide sjovt at kode. Jeg giver _ikke_ op!  ;D
Avatar billede chrisscan Juniormester
02. november 2004 - 00:50 #16
Jeg lærte at skrive HTML i notepad i 1999. Efter det kursus ville jeg prøve "snydevejen" FP men syntes at det var for indviklet ! Gik dog over til FP senere og var glad for det. Har siden hen haft megen glæade af den lærdom jeg fik.
Jeg må jo nok bøje mig h.h.t. Dreamweaver, men jeg er efterhånden så godt inde i FP .. men jeg skal nok Ole ! Endnu en gang tak for det. Se hvor pænt det er blevet (helt nyt lay-out):

http://www.birds-of-denmark.dk/special_pages.htm

Vil lige sætte
  if (!loaded) {
        alert("Please wait untill the document is finished loading.");
        return;
    }
ind og håbe at jeg kan få det til at virke. Jeg er dog lidt i tvivl om, hvor i scriptet det skal indsættes.

Tak igen

CK
Avatar billede chrisscan Juniormester
27. januar 2005 - 00:48 #17
Hej igen - jeg må bøje min hat for det store arbejde du har lavet Ole, men jeg KAN altså ikke få
if (!loaded) {
        alert("Please wait untill the document is finished loading.");
        return;
    }
til at virke. Jeg ved godt det er lang tid siden, men det ville være rart om det OGSÅ virkede..

  Skal den være efter:

window.onload = function() {
    var birdTbl, aBirdRows, aTmpRowTds, aTmp, sTmp;
    birdTbl = document.getElementById("birdTbl");
    aBirdRows = birdTbl.getElementsByTagName("TR");
    for (i=1; i<aBirdRows.length; i++) {
        aTmpRowTds = aBirdRows[i].getElementsByTagName("TD");
        aTmp = [aBirdRows[i].innerHTML];
        for (j=0; j<aTmpRowTds.length; j++) {
            sTmp = aTmpRowTds[j].innerHTML;
            sTmp = sTmp.replace(/<[^>]*>|\r|\n|&nbsp;/g, "");
            aTmp.push(sTmp);
        }
        aBirdData.push(aTmp);
    }
    loaded = true;
}

-------
eller i stedet for loaded = true;

Jeg kunne godt ha' oprettet et nyt spm, men oplysningerne står jo her..

Tak på forhånd

CK
Avatar billede chrisscan Juniormester
27. januar 2005 - 01:32 #18
Glemte at skrive at alt virker - bare ikke den alert, hvis siden ikke er loaded færdig.

http://www.birds-of-denmark.dk/special_pages.htm

CK
Avatar billede olebole Juniormester
27. januar 2005 - 07:55 #19
Det må du zq undskylde, chrissan. E's mailsystem fungerer desværre half-past elendigt!  :o|

Du skal starte med at sætte en variabel 'loaded' til værdien false.
Til slut i alt det, der sker på onload, sættes 'loaded' til true - for så ved vi, det hele virker.
Lige i begyndelsen af den funktion, brugeren kalder, spørger vi på, om 'loaded' stadig er false:
  if (!loaded) ... blabla ...
- er det samme som:
  if (loaded==false) ... blabla ...

Det hele kommer så til at se sådan ud:

<script type="text/JavaScript">
var d=document;
function gE(id){return d.getElementById(id)}
function gA(o,tag){return o.getElementsByTagName(tag)}
function pI(s){return parseInt(s)}

</script>
</head>
<body>


<script type="text/JavaScript">
var d=document;
function gE(id){return d.getElementById(id)}
function gA(o,tag){return o.getElementsByTagName(tag)}
function clArr(a){var aa=[];for(var i=0;i<a.length;i++){aa.push(a[i])};return aa}

var aBirdData = [];
var sortInx = 0;
var actSortInx = 0;
var loaded = false;
function sortBirds(td) {
    if (!loaded) {
        alert("Please wait untill the document is finished loading.");
        return;
    }
    var birdTbl, aTblRows, aFirstRowTds, firstRowHtml, aDataClone, parTd, aTmp=[];
    birdTbl = gE("birdTbl");
    aTblRows = gA(birdTbl, "TR");
    firstRowHtml = aTblRows[0].innerHTML;
    aFirstRowTds = td.parentNode.getElementsByTagName("TD");
    parTd = birdTbl.parentNode;
    tblTag = parTd.innerHTML.match(/<table[^>]*>/i);
    aTmp.push(tblTag);
    aTmp.push("<tr>" + firstRowHtml + "</tr>");
    for (i=0; i<aFirstRowTds.length; i++) {
        if (aFirstRowTds[i]==td) {
            sortInx = i;
            break;
        }
    }
    if (actSortInx==sortInx) {
        for (i=aTblRows.length-1; i>0; i--) {
            aTmp.push("<tr>" + aTblRows[i].innerHTML + "</tr>");
        }
    } else {
        aDataClone = clArr(aBirdData);
        aDataClone.sort(mySort);
        for (i=0; i<aDataClone.length; i++) {
            aTmp.push("<tr>" + aDataClone[i][0] + "</tr>");
        }
    }
    aTmp.push("</table>");
    parTd.innerHTML = aTmp.join("");
    actSortInx = sortInx;
}
function mySort(a, b) {
    if (a[sortInx+1]==""&&b[sortInx+1]!="") return 1;
    if (a[sortInx+1]!=""&&b[sortInx+1]=="") return -1;
    return (a[sortInx+1]<b[sortInx+1])? -1 : (a[sortInx+1]>b[sortInx+1])? 1 : 0;
}
window.onload = function() {
    var birdTbl, aBirdRows, aTmpRowTds, aTmp, sTmp;
    birdTbl = document.getElementById("birdTbl");
    aBirdRows = birdTbl.getElementsByTagName("TR");
    for (i=1; i<aBirdRows.length; i++) {
        aTmpRowTds = aBirdRows[i].getElementsByTagName("TD");
        aTmp = [aBirdRows[i].innerHTML];
        for (j=0; j<aTmpRowTds.length; j++) {
            sTmp = aTmpRowTds[j].innerHTML;
            sTmp = sTmp.replace(/<[^>]*>|\r|\n|&nbsp;/g, "");
            aTmp.push(sTmp);
        }
        aBirdData.push(aTmp);
    }
    loaded = true;
}
</script>
Avatar billede olebole Juniormester
27. januar 2005 - 07:57 #20
... sikke noget vrøvl! Der kom noget fra min default HTML-skabelon med i toppen  :)

<script type="text/JavaScript">
var d=document;
function gE(id){return d.getElementById(id)}
function gA(o,tag){return o.getElementsByTagName(tag)}
function clArr(a){var aa=[];for(var i=0;i<a.length;i++){aa.push(a[i])};return aa}

var aBirdData = [];
var sortInx = 0;
var actSortInx = 0;
var loaded = false;
function sortBirds(td) {
    if (!loaded) {
        alert("Please wait untill the document is finished loading.");
        return;
    }
    var birdTbl, aTblRows, aFirstRowTds, firstRowHtml, aDataClone, parTd, aTmp=[];
    birdTbl = gE("birdTbl");
    aTblRows = gA(birdTbl, "TR");
    firstRowHtml = aTblRows[0].innerHTML;
    aFirstRowTds = td.parentNode.getElementsByTagName("TD");
    parTd = birdTbl.parentNode;
    tblTag = parTd.innerHTML.match(/<table[^>]*>/i);
    aTmp.push(tblTag);
    aTmp.push("<tr>" + firstRowHtml + "</tr>");
    for (i=0; i<aFirstRowTds.length; i++) {
        if (aFirstRowTds[i]==td) {
            sortInx = i;
            break;
        }
    }
    if (actSortInx==sortInx) {
        for (i=aTblRows.length-1; i>0; i--) {
            aTmp.push("<tr>" + aTblRows[i].innerHTML + "</tr>");
        }
    } else {
        aDataClone = clArr(aBirdData);
        aDataClone.sort(mySort);
        for (i=0; i<aDataClone.length; i++) {
            aTmp.push("<tr>" + aDataClone[i][0] + "</tr>");
        }
    }
    aTmp.push("</table>");
    parTd.innerHTML = aTmp.join("");
    actSortInx = sortInx;
}
function mySort(a, b) {
    if (a[sortInx+1]==""&&b[sortInx+1]!="") return 1;
    if (a[sortInx+1]!=""&&b[sortInx+1]=="") return -1;
    return (a[sortInx+1]<b[sortInx+1])? -1 : (a[sortInx+1]>b[sortInx+1])? 1 : 0;
}
window.onload = function() {
    var birdTbl, aBirdRows, aTmpRowTds, aTmp, sTmp;
    birdTbl = document.getElementById("birdTbl");
    aBirdRows = birdTbl.getElementsByTagName("TR");
    for (i=1; i<aBirdRows.length; i++) {
        aTmpRowTds = aBirdRows[i].getElementsByTagName("TD");
        aTmp = [aBirdRows[i].innerHTML];
        for (j=0; j<aTmpRowTds.length; j++) {
            sTmp = aTmpRowTds[j].innerHTML;
            sTmp = sTmp.replace(/<[^>]*>|\r|\n|&nbsp;/g, "");
            aTmp.push(sTmp);
        }
        aBirdData.push(aTmp);
    }
    loaded = true;
}
</script>
Avatar billede olebole Juniormester
27. januar 2005 - 08:11 #21
PS: Hvis jeg var dig, ville jeg overveje én af to løsninger på en lille forbedring:
1. Sæt en target="_blank" på alle dine links på arkiv-siden
2. Læg en 'Archive' knap ved siden af 'Home' knappen

Hvis arkiv-siden er min indgang til en fugl, har jeg ikke en direkte vej tilbage, men må forbi 'Home', hvor jeg så skal ned og lede efter linket til arkivet.
target="_blank" er måske det bedste, da man så slipper for at skulle reloade arkiv-siden mange gange.

Derudover synes jeg, du har fået pyntet væsentligt på siden  :)
Avatar billede chrisscan Juniormester
27. januar 2005 - 14:19 #22
Tak for det Ole - kigger på det senere i dag.

Siden hed før "specialpages" og derfor knappen "back to specialpages" på alle undersider. Det er lidt misvisende nu kan jeg godt se. Jeg tænker at droppe alle disse fp hoverbottons på et tidspunkt. Target_blank er en udmærket løsning. Det må kunne gøres i et hug med "søg/erstat" i html-visning.

Foreløbigt tak

Carsten hedder jeg iøvrigt rigtigt...
Avatar billede chrisscan Juniormester
04. februar 2005 - 17:34 #23
Hej Ole

Jeg har nu sat
<script type="text/JavaScript">
var d=document;
function gE(id){return d.getElementById(id)}
function gA(o,tag){return o.getElementsByTagName(tag)}
function pI(s){return parseInt(s)}

</script>

ind i head

og

<script type="text/JavaScript">
var d=document;
function gE(id){return d.getElementById(id)}
function gA(o,tag){return o.getElementsByTagName(tag)}
function clArr(a){var aa=[];for(var i=0;i<a.length;i++){aa.push(a[i])};return aa}

var aBirdData = [];
etc ect............

ind i body. Jeg håber det var det du mente... det virker i hvert fald.

Jeg skal have lavet alle knapperne om til "back to archive" i stedet for "back to special pages" som den jo hed før.
http://www.birds-of-denmark.dk/special_pages.htm

Tak for din hjælp

Carsten
Avatar billede chrisscan Juniormester
04. februar 2005 - 17:56 #24
Jeg har ikke erstattet noget men kun sat ind... håber det var det rigtige..

Carsten
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