Ik bedacht me laatst ineens het volgende: er is geen <form>-element waarmee je een plaatje kunt tekenen om dat te versturen naar een server. Nu, ik verveel me een beetje en heb me voorgenomen om zoiets eens te maken.

De techniek is er wel een beetje:

Ik neem een div, zet daar een JavaScriptje achter, zodat als je er overheen gaat met je muis, hij check of je je muisknop hebt ingedrukt, en als dat zo is geeft ie die ene pixels een bepaalde kleur. Dat slaat hij dan ook op in een array ofzo, en dan kun je vervolgens met GD een plaatje ervan maken.

Tot zover allemaal heel leuk enzo, maar nu het probleem. Hoe kan ik in een div een bepaalde pixels een andere kleur geven dan de rest? Om nou allemaal verschillende div's te maken, lijkt me een beetje overdreven. Een andere optie is een tabel, maar daarvoor geldt hetzelfde.

Heeft iemand misschien een geniale ingeving?

PS: Wat ik wil maken bestaat al (kwam een vriend van me gisteren mee), maar het is gewoon een Markup Language (InkML), die natuurlijk door geen één browser wordt ondersteunt. Zie hier.
misschien in allemaal kleine tabelcellen van 1 bij 1 px?
Met een div en muisklikdetectie zal het niet gaan lukken. Het blijkt onmogelijk om crossbrowser de muispositie goed te bepalen. Zie de alinea Mouse Position op deze pagina, of lees lees dit artikel van dezelfde schrijver.

Een andere optie is een tabel, maar daarvoor geldt hetzelfde.

Ik zou razendsnel een nieuw plaatje laten aanmaken, bij elke wijziging, en die als achtergrond in de div doen, maar dan moet je adsl niet te sloompjes zijn...

<input type="image">

Heb gelezen dat als je die in een <form> propt, een naam geeft en laat verzenden dat de var in php de positie van de muis meegeeft, waardoor je dus toch steeds continu zult moeten verversen. Of zoiets met ajax ofzo
Ik denk dat ik maar voor de tabel ga. Hoe moet ik dat doen? Kun je bij slepen gewoon onclick gebruiken? of iets van onmouseover en if(ingedrukt)? En wat moet er dan i.p.v. 'ingedrukt'?
Maar werkt dat ook als ik er alleen maar overheen sleep met een ingedrukte muisknop?

[edit]Nee, werkt niet...

Hoe check ik of de linker muisknop is ingedrukt?[/edit]
Misschien tijd voor canvas, en wat van het vele voorbeeldmateriaal. Daar staat vast ook wel ergens de canvas for IE javascriptbibliotheek.

Reageren