P5js
Børre Stenseth
Eksempler >Dom

DOM

Hva

DOM (Document Object Model) brukes til å beskrive strukturen på en en webside. Dersom vi skal lage interaktivitet på en webside må vi på en eller annen måte ha kontroll over denne strukturen.

Når vi arbeider med p5js har vi et dilemma: Skal vi bruke p5js sitt eget bibliotek med DOM-funksjonalitet eller skal vi bruke javascript/HTM/CSS uavhengig av p5js. Det er mye som tyder på at de som designer p5js har det samme dilemmaet.

Du finner en beskrivelse av p5js sitt DOM-bibliotek blandt annet her: Beyond the canvas.

På denne siden skal jeg presentere tre enkle, men ganske nyttige mekanismer som viser hvordan vi ganske enkelt kan hente data fra HTML-siden og bruke dem i en skisse, uten å kople inn DOM-biblioteket til p5js.

Nøkelen til å få til dette er:

document.getElementById("minTekst").value

Dette lokaliserer det elementet på websiden som har den angitte id-attributten, og vi kan plukke opp innholdet. I input-elementer er innholdet angitt med value. I andre html-elementer kan vi hente innholdet med andre angivelser. Det skal bare være et element på websiden med en bestemt id-attributt. Hvis det er flere hentes den første forekomsten.

Lese tekst

Her bruker vi et input-element av typen textarea. Dette er plassert under canvas. Vi plukker opp inholdet i dette elementet hver gang skissen tegnes.

HTML-siden

_test.html

Skissen

_sketch.js

Lese en tallangivelse

Her bruker vi et input-element av typen range. Dette er plassert under canvas. Vi plukker opp inholdet i dette elementet hver gang skissen tegnes.

HTML-siden

_test.html

Skissen

_sketch.js

Plukke opp en farge

Her bruker vi et input-element av typen color. Dette er plassert under canvas. Vi plukker opp inholdet i dette elementet hver gang skissen tegnes.

HTML-siden

_test.html

Skissen

_sketch.js

Du kan inspisere koden på egne sider:

Tekst: test.html https://borres.hiof.no/pisk/P5js/p5jsskisser/domText/test.html

Tall: test.html https://borres.hiof.no/pisk/P5js/p5jsskisser/domRange/test.html

Farge: test.html https://borres.hiof.no/pisk/P5js/p5jsskisser/domColor/test.html

Eksempler >Dom