javascript - 带 jquery ui slider 的 Html5 Canvas

标签 javascript html jquery-ui

我第一次使用 html5,试图让这个 jquery ui slider 将正确的值发送到这个 html5 Canvas 不透明度。经过一番谷歌搜索和乱搞后,我在这里工作了:http://jsfiddle.net/y54Es/25/当你使用它时,你会明白我的意思,在 slider 移动之前不会出现图像,我知道这与我拥有功能的顺序有关,我只是无法让它工作,否则这是我的代码如下: JS:

    $("#slider").slider({
  animate: true,
  range: "min",
  value: 0.5,
  min: 0,
  max: 0.9,
  step: .01,

  slide: function (event, ui) {
    $('#hiddenField').attr('value', ui.value);
    $("#slider-result").html(ui.value);
    var canvas = document.getElementById("myCanvas");
    var ctx = canvas.getContext("2d");
    var valueVar = $('#hiddenField').val();
    var img1 = loadImage('http://moosepic.com/test2.png', main);
    var img2 = loadImage('http://moosepic.com/test.png', main);

    var imagesLoaded = 0;

    function main() {
      imagesLoaded += 1;

      if (imagesLoaded == 2) {
        // composite now
        ctx.drawImage(img1, 0, 0, 300, 300);
        if (valueVar == 0) {

        } else {
          ctx.globalAlpha = valueVar;
          ctx.drawImage(img2, 0, 0, 300, 300);
        }
      }
    }

    function loadImage(src, onload) {
      var img = new Image();

      img.onload = onload;
      img.src = src;

      return img;
    }
  }

});

当 slider 一直向左移动时,有关如何使第二个图像完全抵消的任何帮助都会很棒......如果有人可以帮助我将初始图像加载到 Canvas 上,那就太棒了也是。

最佳答案

只有在实际调整 slider 时才会调用您正在使用的滑动方法。 jQueryUI Slider 对象还提供了create method在页面加载时创建 slider 时调用一次。

我建议使用它来执行 Canvas 的初始设置。例如加载 Canvas 图像等。

关于javascript - 带 jquery ui slider 的 Html5 Canvas ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14357667/

相关文章:

javascript - Typescript 错误 TS1005 : ':' expected. 与 Object.assign()

html - 如何在div中并排垂直对齐图像和文本

javascript - 当我单击时,通过 on 的单击事件会一次又一次附加单击事件

jquery - 具有不同设计的多个淡入/淡出子菜单

jquery - 从 jquery ui datepicker maxDate 选项获取日期对象

javascript - jQuery datepicker onChangeMonthYear 事件未触发

javascript - jQuery UI 模态问题

javascript - 将图像添加到 Google map 标记

javascript - 运行 "if"的点击函数然后继续

javascript - 填字游戏的 HTML 布局