【发布时间】:2016-03-31 18:43:42
【问题描述】:
我希望能够使用滑块调整画布上的矩形大小,同时将这些值显示在两个文本框中。我有这段代码工作,但它使旧值在画布上可见。在我打电话给strokeRect() 之前,我尝试过使用clearRect(),但这阻止了我的滑块工作。
简而言之,我想在画布上绘制一个矩形,并让两个滑块调整它的大小,一个用于宽度,一个用于高度。我对编码比较陌生,所以我知道我可能犯了一个明显的错误!
这是我的 JS 代码,用于将值打印到文本框并绘制矩形:
$(function() {
var c1=document.getElementById("c1");
var ctx1=c2.getContext("2d");
$( "#slider1" ).slider({
value:100,
min: 10,
max: 500,
step: 10,
slide: function( event, ui ) {
$( "#textBox1" ).val(ui.value + "cm");
ctx1.strokeRect(0, 0,$( "#slider1" ).slider( "value" ), $( "#slider2").slider( "value" ) );
}
});
$( "#slider2" ).slider({
value:100,
min: 10,
max: 500,
step: 10,
slide: function( event, ui ) {
$( "#textBox2" ).val(ui.value + "cm");
ctx1.strokeRect(0, 0,$( "#slider1" ).slider( "value" ), $( "#slider2").slider("value"));
}
});
$( "#textBox1" ).val($( "#slider1" ).slider( "value" ) + "cm");
$( "#textBox2" ).val($( "#slider2" ).slider( "value" ) + "cm");
});
还有我的 HTML 代码:
<div id="slider1" class="slider"></div>
<input type="text" id="textBox1" class="sizeBox" value="100cm">
<label>Height</label></input>
<br>
<div id="slider2" class="slider"></div>
<input type="text" id="textBox2" class="sizeBox" value="100cm">
<label>Width</label></input>
<canvas id="c1"></canvas>
【问题讨论】:
标签: javascript html canvas slider drawrect