사용자가 슬라이더를 호출하여 이미지 모양을 변경할 수있는 페이지가 있습니다. 하나의 슬라이더가 표시되지만 총 10 개의 슬라이더 만 표시됩니다. 각각에 대해 js 함수를 작성하는 대신 HTML5 data-
변수를 사용하여 간소화하려고합니다."data- *"및 JQueryUI 슬라이더 사용
<div class="editSliderHolder" id="brightness">
<label>Brightness</label>
<div class="editSlider" data-minVal="-20" data-maxVal="20" data-editValue="curValB"></div>
</div>
<div class="editSliderHolder" id="contrast">
<label>Contrast</label>
<div class="editSlider" data-minVal="-40" data-maxVal="40" data-editValue="curValC"></div>
</div>
그리고 JQuery와 내가 노력하고있어 :
$(document).ready(function() {
var div = $("div.editSlider");
div.slider({
value: 0,
min: div.data("minVal"),
max: div.data("maxVal"),
slide: function (event, ui) {
//alert(min); // check if value set
div.data("editValue", ui.value);
$(this).find('.ui-slider-handle').text(Math.round(ui.value));
},
stop: function(event, ui) {
div.data("editValue", ui.value);
Caman('#capEdit', function() {
this.revert(); // restore canvas
this.contrast(curValC); // add contrast
this.brightness(curValB); // add brightness
this.render(); // render it
});
}
});
});
그래서 어떤 일이 발생
이며, 최소 및이
는 한 눈에 보이는 한 번에 두 슬라이더의 HTML입니다 최대 값은 각 슬라이더에 설정되며 ui.value는 어떤 효과를 변경할지 결정합니다. 즉,이 경우에는 밝기 또는 대비입니다.아무런 값도 설정되지 않았으며 그 이유에 대해서는 알지 못합니다. 이 작업을 수행하는 더 좋은 방법이 있습니까? 아니면이 코드가 잘못 되었습니까?
좋은 답변입니다! 이것과 특히 설명을위한 많은 감사합니다! –
고마워, 천만에. – SirDerpington