Bedankt!quote:
1 2 3 | ul li a:link {color:#202020;text-decoration:underlined;} ul li a:visited {color:#202020;} ul li a:hover {color:#202020;} |
Ja het was een voorbeeldje voor hoe je het kan aanpakken, mooi dat je het werkend hebt gekregen.quote:Op dinsdag 25 maart 2014 21:13 schreef maikel112 het volgende:
[..]
Bedankt!
Ik heb je code iets aan moeten passen, maar nu werkt hij!
Met deze code heb ik het werkend gekregen:
[ code verwijderd ]
1 2 3 4 5 6 | "cirkels": [ {"name": "Aap", "size": 398}, {"name": "Noot", "size": 312}, {"name": "Mies", "size": 714}, {"name": "Boom", "size": 43} ] |
En nu te emuleren met TypeScriptquote:Op donderdag 27 maart 2014 08:52 schreef robin007bond het volgende:
ECMAScript 6.![]()
Goed OOP, let variabelen, modules.
1 2 3 4 5 6 7 8 9 | switch (x) { case 0: let foo; break; case 1: let foo; // TypeError for redeclaration. break; } |
Tsja. Dat is inderdaad zo. Ik wist niet dat let-variabelen daar zo nauw naar zouden luisteren.quote:
Ziet er goed uit, maar helaas geen interactie.quote:Op vrijdag 28 maart 2014 21:45 schreef TwenteFC het volgende:
Gewoon even een ordinaire linkdump omdat ik vandaag erg blij was toen ik dit tegenkwam.
http://www.chartjs.org/docs/
Kost je voor commercieel gebruik wel geld helaas.quote:Op vrijdag 28 maart 2014 21:48 schreef Catch22- het volgende:
Ik heb onlangs een project met highcharts gedaan, ook een lekkere library
Was een project voor een multinational met een miljardenomzet, dus dan is die 3k niet zon probleemquote:Op vrijdag 28 maart 2014 22:06 schreef robin007bond het volgende:
[..]
Kost je voor commercieel gebruik wel geld helaas.Ach, het bedrijf waar je werkt zal die kleine licentie wel kunnen bekostigen. Zo duur is het niet.
Tof. Lijkt me best spannend, zo'n verantwoordelijkheid.quote:Op vrijdag 28 maart 2014 22:08 schreef Catch22- het volgende:
[..]
Was een project voor een multinational met een miljardenomzet, dus dan is die 3k niet zon probleem
Is t ook. Maar ik doe alleen dingen waarvan ik weet dat ik t kanquote:Op vrijdag 28 maart 2014 22:42 schreef robin007bond het volgende:
[..]
Tof. Lijkt me best spannend, zo'n verantwoordelijkheid.
1 2 3 4 | add: function(itemCost){ this.total += (itemCost || 0); this.lastTransactionAmount = itemCost; } |
1 | this.total += itemCost; |
"|| value" is in Javascript een standaardsyntax voor het opgeven van een alternatieve waarde als een variabele niet beschikbaar is. Door || 0 hier te schrijven zijn er voor een ervaren Javascript-programmeur onmiddellijk 2 dingen duidelijk aan deze functie:quote:Op zaterdag 29 maart 2014 19:14 schreef robin007bond het volgende:
Zat eens te kijken op CodeCademy en zag wat vreemds in de code.
[ code verwijderd ]
Vanwaar bij regelnummer 2 de || operator? Volgens mij willen ze de itemCost optellen bij total als die waarde er is, en anders er 0 bij optellen. Maar waarom? Als de parameter zou slaan op false dan wordt er sowieso 0 bij opgeteld toch?
En je kunt functies die parameters vereisen niet aanroepen zonder een parameter aan te geven toch? Dus die (itemCost ||"0) lijkt me erg overbodig. Kan dat niet gewoon:
[ code verwijderd ]
zijn?
Het gaat om deze opdracht:
http://www.codecademy.com(...)24b3a7dffd00020bf661
Wel goed dat ze je de object literal notation leren.
Dat kan dus welquote:En je kunt functies die parameters vereisen niet aanroepen zonder een parameter aan te geven toch?
Heel erg bedankt Tijn. Held!quote:Op zaterdag 29 maart 2014 23:20 schreef Tijn het volgende:
[..]
"|| value" is in Javascript een standaardsyntax voor het opgeven van een alternatieve waarde als een variabele niet beschikbaar is. Door || 0 hier te schrijven zijn er voor een ervaren Javascript-programmeur onmiddellijk 2 dingen duidelijk aan deze functie:
1) itemCost is een optioneel argument
2) de standaardwaarde van itemCost is 0
De reden dat je dit toch zou schrijven in plaats van het weg te laten (omdat het inderdaad in dit geval niet veel doet) is het verduidelijken van de code en het makkelijker te maken toekomstige aanpassingen te verwerken. Je helpt als het ware je toekomstige collega door je code op deze manier op te schrijven.
[..]
Dat kan dus welJavascript flexibility powerrrr
1 2 | function blabla(getal = 0) { } |
Haha flexibility power.quote:Op zaterdag 29 maart 2014 23:20 schreef Tijn het volgende:
[..]
"|| value" is in Javascript een standaardsyntax voor het opgeven van een alternatieve waarde als een variabele niet beschikbaar is. Door || 0 hier te schrijven zijn er voor een ervaren Javascript-programmeur onmiddellijk 2 dingen duidelijk aan deze functie:
1) itemCost is een optioneel argument
2) de standaardwaarde van itemCost is 0
De reden dat je dit toch zou schrijven in plaats van het weg te laten (omdat het inderdaad in dit geval niet veel doet) is het verduidelijken van de code en het makkelijker te maken toekomstige aanpassingen te verwerken. Je helpt als het ware je toekomstige collega door je code op deze manier op te schrijven.
[..]
Dat kan dus welJavascript flexibility powerrrr
Ik doe het ook zo inderdaad.quote:Op zondag 30 maart 2014 10:26 schreef robin007bond het volgende:
[..]
Heel erg bedankt Tijn. Held!
Zoiets dacht ik al, maar ik wist het dus niet zeker.
Kun je dan niet net zo goed dit doen?
[ code verwijderd ]
![]()
Dat ben ik gewend uit andere talen en vind ik persoonlijk ook logischer en makkelijker te lezen. Daarnaast is het schaalbaarder omdat je dan niet bij alles wat je met itemCost doet zo'n "value || 0" moet gebruiken.
Oh ik bedoelde in PHP.quote:Op zondag 30 maart 2014 13:05 schreef Tijn het volgende:
[..]
Dat is bijzonder, want het is geen valide syntax in Javascript.
Zoals hierboven al is gezegd, is dat dus geen valide syntax in Javascript. Je zult het met de || operator moeten doen.quote:Op zondag 30 maart 2014 10:26 schreef robin007bond het volgende:
[..]
Heel erg bedankt Tijn. Held!
Zoiets dacht ik al, maar ik wist het dus niet zeker.
Kun je dan niet net zo goed dit doen?
[ code verwijderd ]
![]()
Dat ben ik gewend uit andere talen en vind ik persoonlijk ook logischer en makkelijker te lezen. Daarnaast is het schaalbaarder omdat je dan niet bij alles wat je met itemCost doet zo'n "value || 0" moet gebruiken.
1 2 3 4 5 6 7 8 9 | function something(x, y, z) { var defaultValue = 0; x = x || defaultValue; y = y || defaultValue; z = z || defaultValue; /* hier allerlei berekening waarbij je x, y en z gebruikt en uiteindelijk iets teruggeeft */ } |
Dat is inderdaad een mooie manier om herhaling te voorkomen.quote:Op zondag 30 maart 2014 13:21 schreef Tijn het volgende:
[..]
Zoals hierboven al is gezegd, is dat dus geen valide syntax in Javascript. Je zult het met de || operator moeten doen.
Jezelf herhalen is natuurlijk een grote nono (Don't Repeat Yourself!), dus als je op meerdere plaatsen deze variabele nodig hebt, dan zorg je bovenaan je functie dat de juiste waarde in wordt gevuld.
[ code verwijderd ]
Het is ook niet nodig in Javascript, alle argumenten zijn standaard optioneel.quote:Op zondag 30 maart 2014 13:43 schreef robin007bond het volgende:
[..]
Dat is inderdaad een mooie manier om herhaling te voorkomen.
Ik mis dan wel die manier van optionele parameters zoals je dat wel hebt in andere talen. Volgens mij introduceren ze dat niet in ECMAScript 6.
Dat vind ik niet netjes!quote:Op zondag 30 maart 2014 13:59 schreef Tijn het volgende:
[..]
Het is ook niet nodig in Javascript, alle argumenten zijn standaard optioneel.
1 | <title><?php if (is_home () ) { bloginfo('name'); } elseif ( is_category() ) { single_cat_title(); echo ' - ' ; bloginfo('name'); } elseif (is_single() ) { single_post_title(); } elseif (is_page() ) { single_post_title(); } elseif ( is_404() ) { echo 'Pagina niet gevonden'; } else { wp_title('',true); } ?></title> |
Waarschijnlijk kunnen ze je hier beter helpenquote:Op zondag 30 maart 2014 20:24 schreef maikel112 het volgende:
Iemand die mij uit de brand kan helpen.
Toen ik mijn Wordpress website had opgezet een aantal jaar geleden werd automatisch bij elke pagina "| website naam" toegevoegd achter elke pagina titel.
Nu wil ik dit weer realiseren, met uitzondering van de homepage.
De code die ik nu heb is als volgt:
[ code verwijderd ]
Waar voeg ik de statische titel toe....?
De laatste video van Crockfords YUI Theater serie over Javascript gaat over hoe om te gaan met dit soort irrationele gevoelensquote:
Ik vind het juist een heel rationeel gevoel.quote:Op zondag 30 maart 2014 22:28 schreef Tijn het volgende:
[..]
De laatste video van Crockfords YUI Theater serie over Javascript gaat over hoe om te gaan met dit soort irrationele gevoelens
Heb de docs wel eens bekeken. Zoveel stelt t niet voor toch?quote:Op zondag 30 maart 2014 23:02 schreef esv7 het volgende:
zitten hier nog mensen met ervaring met underscore.js?
Dit. Zit wel een aantal handige helper functies in, ik zie wel situaties waarin ik dat zou willen gebruiken.quote:Op zondag 30 maart 2014 23:05 schreef Catch22- het volgende:
[..]
Heb de docs wel eens bekeken. Zoveel stelt t niet voor toch?
quote:Op zondag 30 maart 2014 23:05 schreef Catch22- het volgende:
[..]
Heb de docs wel eens bekeken. Zoveel stelt t niet voor toch?
Oké, ik ben namelijk bezig met mij te verdiepen in AngularJS, maar het wordt een beetje veel bij elkaar. Ik heb verder nog geen ervaring met yeoman et cetera. En er werd in een tutorial aangeraden om functional javascript te lezen, wat er weer vanuit gaat dat je met underscore.js kan werken.quote:Op maandag 31 maart 2014 00:39 schreef picodealion het volgende:
[..]
Dit. Zit wel een aantal handige helper functies in, ik zie wel situaties waarin ik dat zou willen gebruiken.
Een library met functies, wel meer dan alleen string's. Alleen op een van de eerste bladzijden van functional programming krijg je dit al:quote:Op maandag 31 maart 2014 09:07 schreef Catch22- het volgende:
Het is toch gewoon een uitgebreide string helper?
Dat heeft niet zoveel met underscore of angular te maken. Daarnaast is je voorbeeld voor de meeste (ervaren) programmeurs wel te lezen.quote:Op maandag 31 maart 2014 12:10 schreef esv7 het volgende:
[..]
Een library met functies, wel meer dan alleen string's. Alleen op een van de eerste bladzijden van functional programming krijg je dit al:
[ afbeelding ]
En gaan ze ervan uit dat je dit al begrijpt, wat niet het geval is. Daarom laat ik functional programming nog maar even voor wat het is.
De structuur begrijp ik wel grotendeels, alleen de underscore functies ken ik niet, en die staan ook niet uitgelegd of beschreven oid. En ik kwam hier bij omdat er in een AngularJs tutorial werd geadviseerd om dit boek te lezen.quote:Op maandag 31 maart 2014 12:12 schreef Scorpie het volgende:
[..]
Dat heeft niet zoveel met underscore of angular te maken. Daarnaast is je voorbeeld voor de meeste (ervaren) programmeurs wel te lezen.
Gewoon in de docs checken wat die functies doenquote:Op maandag 31 maart 2014 13:40 schreef esv7 het volgende:
[..]
De structuur begrijp ik wel grotendeels, alleen de underscore functies ken ik niet, en die staan ook niet uitgelegd of beschreven oid. En ik kwam hier bij omdat er in een AngularJs tutorial werd geadviseerd om dit boek te lezen.
1 2 3 4 5 6 7 8 | <div class="producten"> <div class="product1"> <img src="images/1p/1pbed_1.jpg" alt="" class="fade" /> </div> <div class="product2"> <img src="images/1p/1pbed_2.jpg" alt="" class="fade" /> </div> </div> |
1 2 3 4 5 6 7 8 9 10 11 12 13 | .producten img { display: block; height: 200px; width: 300px; margin: 10px 0px 10px 15px; float: left; background-image: url("../images/1p/product_bg.jpg") no-repeat top left; } .product1 { background-image: url("../images/1p/product_bg.jpg") no-repeat; display: block; } |
Volgens mij is het probleem dat parents niet over hun children heen kunnen vallen qua z-index. Daarom staat je plaatje altijd over de achtergrond heen, waardoor je de achtergrond niet ziet.quote:Op maandag 31 maart 2014 17:08 schreef Xaryna het volgende:
Ik was aan het prutsen voor de lol, en ik heb een probleem
Ik heb een pagina gemaakt met html/css waarbij er een zooi afbeeldingen naast elkaar staan, met float. Elke afbeelding staat in een eigen div, en alle divs met afbeeldingen staan in een div.
Nou heb ik met jQuery er een mooi dingetje opgepleurt waardoor de afbeeldingen faden naar 0,3 opacity, maar ik wil dat er achter die afbeeldingen een logo komt te staan. Dit lukt me niet! Ik heb een backgroundimg bij de afbeeldingen geprobeerd, en een afbeelding in de divs van de afbeeldingen. En het werkt niet. Als ik height en width opgeef bij de backgroundimg, float de boel niet meer. Wat doe ik verkeerd?
Voorbeeld html:
[ code verwijderd ]
Voorbeeld CSS:
[ code verwijderd ]
.producten div {} werkte ook niet en ik doe vast iets doms ergens.
1 2 3 4 5 6 7 8 9 10 | <ul class="producten"> <li> <img src="product1.jpg" alt="" /> <img class="logo" src="logo.png" alt="" /> </li> <li> <img src="product2.jpg" alt="" /> <img class="logo" src="logo.png" alt="" /> </li> </ul> |
1 2 3 4 5 6 7 8 9 10 11 12 13 | .producten li { position: relative; float: left; width: 300px; height: 200px; } .producten li .logo { position: absolute; top: 10px; left: 10px; } |
1 2 3 4 5 6 7 8 9 10 11 12 13 | .producten div { display: block; height: 200px; width: 300px; margin: 10px 0px 10px 15px; float: left; background-image: url("logo.png"); background-repeat: no-repeat; background-position: 10px 10px; } .producten img { opacity: 0.3; } |
Het werkt nu wel, ik heb nu idd de hele bups op de div gezet ipv de img. Dank je, hij doet het!quote:Op maandag 31 maart 2014 17:32 schreef Tijn het volgende:
Of bedoel je dat je het logo echter ACHTER je plaatje wilt hebben? Is dat waarom je het plaatje ook doorzichtig maakt? In dat geval zou dit moeten werken:
[ code verwijderd ]
Er zat sowieso volgens mij een fout in de syntax van je background-image-regel. Ik weet niet uit m'n hoofd wat de shorthandnotatie daarvan is, maar ik vermoed dat het alleen werkt met de key "background" en niet met "background-image".
Ik kwam dat tegen bij zoeken naar oplossingen.quote:Op maandag 31 maart 2014 17:50 schreef Tijn het volgende:
"display: block" is trouwens niet nodig als je een element float, want hij wordt dan automatisch een block.
Thanks! Dat zou mij erg helpen.quote:Op dinsdag 1 april 2014 22:19 schreef picodealion het volgende:
Ik heb ooit een wrapper functie gemaakt die een for-loop nabootst maar op gezette intervals een setTimeout gebruikt om de browser even ruimte te geven. Je kan dan aangeven hoeveel iteraties per keer je wil laten draaien, heeft voor mij een bepaalde pagina waar duizenden records in moesten worden verwerkt een boel performance-problemen opgelost. Zal 'm even opzoeken.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 | function fragmentedFor(arguments) { var fragmentLength, totalLoops, runEachLoop, runWhenDone, start; var init = function() { fragmentLength = arguments.fragmentLength || 10; totalLoops = arguments.totalLoops; runEachLoop = arguments.runEachLoop; runWhenDone = arguments.runWhenDone; start = arguments.start || 0; runNextFragment(); } var runNextFragment = function() { var end = start + fragmentLength; for(var i = start; i < Math.min(end, getTotal()); i++) { runEachLoop( i ); } start += fragmentLength; if(start < getTotal()) { setTimeout(runNextFragment, 1); } else { runWhenDone(); } } var getTotal = function() { // allows totalLoops argument to be either a variable or a function return typeof(mightBeAFunction) === 'function'; } init(); } |
1 2 3 4 5 6 | for(var i = 0; i < 10000; i++) { console.log(i); } doeIetsNaDeForLoop(); |
1 2 3 4 5 6 7 8 9 | fragmentedFor({ fragmentLength: 100, // aantal iteraties door de for-loop per keer, optioneel. default is 10 totalLoops: 10000, runEachLoop: function(i) { console.log(i); }, runWhenDone: doeIetsNaDeForLoop, start: 0 // optioneel, default is al 0 }); |
Google maps? Dan kan je sowieso clusters gebruiken.quote:Op dinsdag 1 april 2014 21:19 schreef robin007bond het volgende:
Ik mis toch wel multithreading in JavaScript. Ja, je hebt workers maar dan kun je niks doen met de DOM. Ik snap het wel, omdat het anders niet thread safe is, maar toch.
Een kaartenmap die een JSON uitleest en daarvan 60.000 markers op een kaart zit. Jullie kunnen je voorstellen dat die dan even hangt.
setTimeout was geen oplossing.
Ja, het lijkt mij op het eerste gezicht niet heel user friendly om 60.000 markers aan te bieden, los van de performance.quote:Op dinsdag 1 april 2014 22:40 schreef Catch22- het volgende:
[..]
Google maps? Dan kan je sowieso clusters gebruiken.
En dat zijn wel lomp veel markers. Ben benieuwd naar de use-case, want dat lijkt me geen werkbare situatie.
Het belang van goede tutorials om iets te lerentwitter:SlexAxton twitterde op donderdag 13-03-2014 om 21:29:32Great. I read the wrong <canvas> tutorial and now there's oil paint all over my monitor. reageer retweet
Waarom niet?quote:Op woensdag 2 april 2014 08:35 schreef boem-dikkie het volgende:
Inderdaad. Hoe valt 60k markers in godsnaam te verantwoorden.
Daarom dus.quote:Op woensdag 2 april 2014 18:00 schreef Maringo het volgende:
[..]
Waarom niet?
Je hebt databases met locaties van bomen, OV haltes, horecagelegenheden en zo nog veel meer. Dan kom je makkelijk aan de 60K. Dat het niet verstandig is om ze allemaal tegelijk te laden, dat is een ander verhaal.
Clusters gebruik ik al.quote:Op dinsdag 1 april 2014 22:40 schreef Catch22- het volgende:
[..]
Google maps? Dan kan je sowieso clusters gebruiken.
En dat zijn wel lomp veel markers. Ben benieuwd naar de use-case, want dat lijkt me geen werkbare situatie.
In clusters maakt dat toch weinig uit. Voorbeeld:quote:Op woensdag 2 april 2014 19:09 schreef Tijn het volgende:
Je kunt een gebruiker nooit 60.000 markers presenteren op een kaart. Daar heeft niemand wat aan.
Oké, anders verwoord. 60.000 markers worden dus nooit in één keer gepresenteerd. Geen zorgen.quote:Op woensdag 2 april 2014 19:22 schreef Tijn het volgende:
Maar dan presenteer je geen 60.000 markers, dat is juist het punt
De performance van je voorbeeld is trouwens best acceptabel toch? En dat is met 50.000 markers, dus waarom zou 60.000 dan een probleem zijn?
Ik zou de hele boel filteren voordat je het aan de user presenteert. Bij voorkeur al in de service die de JSON genereert. Het is gewoon veel te veel data voor een persoon om te kunnen verwerken. Je kunt denk ik beter de service een paar keer aanroepen en nieuwe data opvragen dan dit allemaal in 1x naar de client te willen pushen, laat staan het in de DOM te gooien.quote:Op woensdag 2 april 2014 19:42 schreef robin007bond het volgende:
[..]
Oké, anders verwoord. 60.000 markers worden dus nooit in één keer gepresenteerd. Geen zorgen.
En de performance is wel acceptabel, maar probeer het maar even op een mobiel apparaat uit.Daarnaast is het bij mij nog een JSON die via asynchroon wordt ingelezen en waar nog wat info bij zit.
Dat is ook de bedoeling, maar er kan een user zijn die geen filteropties seelecteert.quote:Op woensdag 2 april 2014 20:01 schreef Tijn het volgende:
[..]
Ik zou de hele boel filteren voordat je het aan de user presenteert. Bij voorkeur al in de service die de JSON genereert. Het is gewoon veel te veel data voor een persoon om te kunnen verwerken. Je kunt denk ik beter de service een paar keer aanroepen en nieuwe data opvragen dan dit allemaal in 1x naar de client te willen pushen, laat staan het in de DOM te gooien.
1 | <font color=#FF0000>Value 1 must be a number</font><script>document.forms[0].value1.focus();</script> |
document.forms is een array van alle forms op een pagina. document.forms[0] is het eerste element in deze array aangezien een array een index heeft die begint bij 0.quote:Op zondag 6 april 2014 01:15 schreef Robuustheid het volgende:
[ code verwijderd ]
Waar staat de [0] in forms voor?
Voor de 'toekomst' wel ja, ondersteunen hier helaas nog wel IE9, 8 en lager niet meer gelukkig.quote:Op zondag 13 april 2014 16:02 schreef Tijn het volgende:
IE10 ondersteunt wel CSS gradients toch? Dat lijkt me uiteindelijk toch beter voor de toekomst dan een afbeelding, al is het svg. En vendor prefixes zijn voor gradients eigenlijk allang niet meer nodig.
Ik zou denken dat iets als een gradient niet belangrijk is voor de functionaliteit en het daarom niet zo erg is als dat niet in oudere browsers werkt.quote:Op zondag 13 april 2014 16:10 schreef n8n het volgende:
[..]
Voor de 'toekomst' wel ja, ondersteunen hier helaas nog wel IE9, 8 en lager niet meer gelukkig.
http://www.postcodeapi.nu/quote:Op dinsdag 15 april 2014 10:22 schreef picodealion het volgende:
Iemand hier ervaring met een postcode API die je adresgegevens aanvult op basis van je postcode en huisnummer? Ik heb er een nodig die potentieel honderdduizenden bezoekers krijgt in een korte periode dus ik ben me even aan het orienteren op wat er allemaal aanwezig is.
Die had ik uiteraard al gevonden, maar bij "excessief gebruik" nemen ze contact met je op. Zou een gevalletje worden van zelf alvast even contact met ze opnemen vermoed ik. Maar heb je hier ervaring mee?quote:
https://api.postcode.nl/quote:Op dinsdag 15 april 2014 10:22 schreef picodealion het volgende:
Iemand hier ervaring met een postcode API die je adresgegevens aanvult op basis van je postcode en huisnummer? Ik heb er een nodig die potentieel honderdduizenden bezoekers krijgt in een korte periode dus ik ben me even aan het orienteren op wat er allemaal aanwezig is.
http://www.webservices.nl(...)de-huisnummer-check/quote:Op dinsdag 15 april 2014 10:22 schreef picodealion het volgende:
Iemand hier ervaring met een postcode API die je adresgegevens aanvult op basis van je postcode en huisnummer? Ik heb er een nodig die potentieel honderdduizenden bezoekers krijgt in een korte periode dus ik ben me even aan het orienteren op wat er allemaal aanwezig is.
https://wiki.gnome.org/JavaScriptquote:Op dinsdag 15 april 2014 19:18 schreef Tijn het volgende:
Ja, voor alle relevante platformen. Mac, Linux, Windows, de hele handel.
Ik heb dit gevonden:
https://github.com/rogerwang/node-webkit/
http://www.tidesdk.org/
http://appjs.com/
https://github.com/neam/webapp-xul-wrapper
Iemand ervaringen of tips? Het hoeft niet per se gratis te zijn.
Forum Opties | |
---|---|
Forumhop: | |
Hop naar: |