使用jQuery滑块控制processing.js草图

时间:2010-12-05 22:33:45

标签: javascript jquery jquery-ui processing.js

我有一些运气控制Processing.js草图使用html表单元素,并希望使用jQuery滑块来做同样的事情。

<script>
$(function() {
    $( "#slider-range-min" ).slider({
        range: "min",
        value: 37,
        min: 1,
        max: 700,
        slide: function( event, ui ) {
            $( "#amount" ).val( "$" + ui.value );
        }
    });
    $( "#amount" ).val( "$" + $( "#slider-range-min" ).slider( "value" ) );
});
</script>

<p>
<label for="amount">Maximum price:</label>
<input type="text" id="amount" style="border:0; color:#f6931f; font-weight:bold;"/>
</p>

<div id="slider-range-min"></div>

我认为我的主要问题是我不完全理解滑块功能,如何在草图中引用它的值,或者如何引用window.processing.Data = {};滑块内的变量。

感谢任何和所有帮助。

2 个答案:

答案 0 :(得分:2)

如果它有帮助,这是一个有效的演示:

http://matrix.senecac.on.ca/~asalga/FSOSS2010/jQueryUI/jquery-test.html

答案 1 :(得分:1)

我之前从未使用过Jquery-ui的滑块所以我不确定你是否正确使用它。但是您可以通过在窗口对象上放置一个变量来轻松地在处理代码和javascript代码之间进行通信:

1)window.communicate = {}

2)在该对象上存储变量:window.communicate.myVar

3)改变javascript中的变量:

// inside jquery-ui callback
window.communicate.myVar = ui.value;

4)阅读处理中的变量

我在jsfiddle上为你创建了一个演示:http://jsfiddle.net/Zevan/Rms2N/2/

<强>更新

因此,在幻灯片功能中,您可以在通信对象上设置变量:

slide: function( event, ui ) {
    $( "#amount" ).val( "$" + ui.value );
    window.communicate.value = ui.value;
}

然后你可以在processing.js代码中的任何地方使用“window.communicate.value”。