我正在使用KendoUI小部件作爲GUI的hexagonal pattern generator。KendoUI Slider:我可以在沒有鼠標交互的情況下生成幻燈片或更改事件嗎?
我想實現一個Randomize()
函數,它可以將滑塊手柄動畫到一個隨機位置。該功能在點擊Randomize!時調用。按鈕。 這應該在Kendo滑塊上生成一個slide
或change
事件,然後觸發changeYcomp(e)
回調,該回調調用init()
函數更新模式。
標記滑塊:
<div class="sliderwrapper" id="yslider">
<label for="ycompSlider">Y variation</label>
<input id="ycompSlider" class="slider" />
</div>
腳本回調:
$("#ycompSlider").kendoSlider({
slide: changeYcomp,
change: changeYcomp,
min: -10,
max: 10,
smallStep: 1,
largeStep: 10,
value: 0
});
:
滑塊
function changeYcomp(e) {
kendoConsole.log("New slide value is: " + e.value);
ycomp = e.value;
init();
}
參數賦值
隨機化功能:
function Randomize() {
console.log("Randomizing!")
$("#yslider .k-draghandle").animate({
left: Math.round(Math.random()*130-7)
});
}
不幸的是既不改變通過CSS動畫.k-draghandle
位置,也沒有改變任何滑塊的HTML屬性火災的任何事件。
我假設滑塊僅偵聽鼠標事件。
現在唯一的選擇是通過在動畫中添加step
功能來單獨管理滑塊手柄位置和更新功能。
我想避免這種情況,因爲它會迫使一些重新設計或涉及重複。
幫助讚賞。
謝謝!我沒有在滑塊文檔中找到該方法,我也沒有想到查找原型方法。 – HappyTorso
現在剩下的唯一問題是,我使用JQuery.animate()的步驟回調來觸發值更改的每個步驟的觸發器方法,並且在4個滑塊上這樣做似乎將CPU作爲init()方法必須每步重繪畫布多次。 – HappyTorso
是的,我可以看到造成一些緩慢。在'.animate()'的末尾只能執行'.trigger()'一次嗎? – CodingWithSpike