Goed punt.quote:Op donderdag 28 juni 2007 15:06 schreef CraZaay het volgende:
Wat is het doel Chandler? Ben je niet goed af met <optgroup> toevallig?
Ja dat maakt zeker uit.quote:Op donderdag 28 juni 2007 16:01 schreef super-muffin het volgende:
Maakt dit qua preformance wat uit of niet?
[ code verwijderd ]
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | for (var i = 0; i < a.length; i++) { Foo(a[i]); } // sneller for (var i = 0, l = a.length; i < l; ++i) { Foo(a[i]); } // nog sneller (maar in omgekeerde volgorde) var i = a.length; while (i--) { Foo(a[i]); } |
Die laatste is toch simpel te gebruiken (ook andersom)quote:Op donderdag 28 juni 2007 16:48 schreef SuperRembo het volgende:
[..]
Ja dat maakt zeker uit.
[ code verwijderd ]
De laatste versie is het snelst, maar die is wat minder duidelijk, dus die zou ik alleen gebruiken als de snelheid heel belangrijk is.
1 2 3 4 5 6 7 | var j = 0; while (i--) { j++; Foo(a[j]); } |
Goed die laatste! Ga ik meteen inbouwen in m'n project waarbij 500 objecten in een array gestopt moeten worden in een loopquote:Op donderdag 28 juni 2007 16:48 schreef SuperRembo het volgende:
De laatste versie is het snelst, maar die is wat minder duidelijk, dus die zou ik alleen gebruiken als de snelheid heel belangrijk is.
Maar is dat dan niet dynamisch? Als ik "a = document.getElementById('hi').length" pak, dan krijg ik toch elke keer als ik naar "a" vraag de dan geldende lengte van "hi" ? Of slaat hij deze waarde enkel 1 maal op?quote:Op donderdag 28 juni 2007 16:15 schreef Chandler het volgende:
geen idee hehe.
Maar denk dat het wel wat uitmaakt, in PHP iig wel
De parser moet anders constant lezen hoeveel items er in een bepaalde array zitten en dat hoeft de parser niet te doen als jij die gegevens in een tijdelijke variabel zet!
1 2 3 4 5 6 | i = 0 while (i < a) b.removechild(); } |
a is op dat moment een statische variabele...quote:Op vrijdag 29 juni 2007 19:41 schreef Geqxon het volgende:
[..]
Maar is dat dan niet dynamisch? Als ik "a = document.getElementById('hi').length" pak, dan krijg ik toch elke keer als ik naar "a" vraag de dan geldende lengte van "hi" ? Of slaat hij deze waarde enkel 1 maal op?
1 2 3 | return document.getElementById('hi').length; }; |
document.getElementById("div").elements.length? Of bedoel je dat niet?quote:Op vrijdag 29 juni 2007 21:11 schreef SuperRembo het volgende:
Als je een aantal keer de length property van een element wil opvragen dan kan je wel het element zelf in een variable zetten. Dat scheelt een heleboel opzoekwerk in de DOM.
Maar volgens mij is er geen enkel html element die standard een length property heeft
1 2 3 4 5 6 7 8 | <!-- function add() { document.getElementById('cijferinvoer').innerHTML=document.getElementById('cijferinvoer').innerHTML + '<tr><th>CC</th><td><input type="text" name="cijfer[]" AUTOCOMPLETE="of"></td><td><input type="text" name="weging[]" AUTOCOMPLETE="of"></td>'; } //--> </script> |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | function showExtraContent() { var extraContent = document.getElementById('extraContent'); extraContent.style.display = 'block'; } </script> <p> standaard content bla bla bla</p> <div id="extraContent" style="display: none;"> bla bla bla extra content bla bla </div> <a href="#" onclick="showExtraContent(); return false;">klik voor extra content</a> |
maar dan kunnen er niet meerdere rijen toegevoegd worden.quote:Op zaterdag 14 juli 2007 17:19 schreef Farenji het volgende:
De makkelijkste en netste oplossing is niet het toevoegen via JS en innerHTML, maar dmv een div met style "display: none;" die je mbv javascript op "display: block;" zet. Zo zal de state van je form gewoon behouden blijven en hoef je ook geen html in je JS code op te nemen (want dat is).
Voorbeeldje:
[ code verwijderd ]
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | { var tbody = document.getElementById ('cijferinvoer').getElementsByTagName("tbody")[0]; var row = document.createElement("tr") var th1 = document.createElement("th") th1.appendChild(document.createTextNode("CC")) var td1 = document.createElement("td") var a = '<input type="text" name="var1[]" AUTOCOMPLETE="off">' td1.appendChild(document.createTextNode(a)) var td2 = document.createElement("td") td2.appendChild (document.createTextNode('<input type="text" name="var2[]" AUTOCOMPLETE="off">')) row.appendChild(th1); row.appendChild(td1); row.appendChild(td2); tbody.appendChild(row); |
quote:CC <input type="text" name="var1[]" AUTOCOMPLETE="off"> <input type="text" name="var1" AUTOCOMPLETE="off">
1 2 | td1.appendChild(document.createTextNode(a)) |
Forum Opties | |
---|---|
Forumhop: | |
Hop naar: |