Ik heb het volgende script:

Typ uw tekst en sleep deze in het plaatje.<br>
Regel 1: <input type="text" name="Regel1" id="Regel_1" onkeypress="insertText1(this)" onkeyup="insertText1(this)" onkeydown="insertText1(this)"> 
Lettergrootte: <select name="Lettergrootte1" onchange="document.getElementById('Regel1').style.fontSize =  this.value" >
<option value="16" SELECTED>16</option>
<option value="18">18</option>
<option value="20">20</option>>
<option value="24">24</option>
<option value="28">28</option>
<option value="32">32</option>
<option value="36">36</option>
<option value="40">40</option>
</select> 
Draaien: 
<input type="range" id="Range1" name="Draaien1" min="0" max="360" value="0" step="5" oninput="rangevalue.value=value" onchange="rangevalue.value=value">
<output id="rangevalue">0</output>
<div id="Regel1" class="Balloon"></div><br>
<script>
$( "#Range1" ).change(function() {
var range = $('#Range1');
$("#Regel1").rotate(range);
});
</script>


In het eerste vak vul je de tekst in, deze komt in het lettertype "Balloon"(Keuze zit erboven) te staan. Je kunt deze vergroten (De tekst). Ik wil dat je de tekst ook kunt draaien. Doe ik:

$( "#Range1" ).change(function() {
var range = $('#Range1');
$("#Regel1").rotate(45);
});


Werkt het wel prima. Ik wil dus, wat er wordt gekozen bij de Range, dat dat de rotatie is. Waar ga ik mis?
[code lang=js]
$("#Range1").change(function() {
var range = $('#Range1');
$("#Regel1").rotate($("#Range1" ).val());
});
[/code]
Werkt helaas niet.
Documentatie is niet helemaal duidelijk Er staat in de documentatie [Number], dus ik vermoed dat je een getal moet ingeven en geen string. De waarde van de val() functie is per definitie een string, dus dat zal je dan moeten typecasten:
[code lang=js]
$("#Range1").change(function() {
$("#Regel1").rotate(Number($("#Range1" ).val()));
});
[/code]

Nogmaals: denk ik....
Top, bedankt beide. Voor degene die dit topic zien en het ook direct willen zonder dat je de muis los moet laten:


$("#Range1")[0].oninput = function () {
    $("#Regel1").rotate(Number($("#Range1" ).val()));
};


Is de oplossing ^^

Reageren