javascript - html5 canvas 包括颜色选择

标签 javascript jquery html canvas

我已经制作了一个 Canvas ,您可以在其中自由绘制。 但我无法向其中添加一些颜色,这取决于用户的选择。

我在网络中找到了这个源代码,但我不知道如何用我的代码来管理它 -> http://intridea.github.io/sketch.js/

我想包括颜色选择:Sample

这是我到目前为止的代码:

 $(function() {
    $.each(['#f00', '#ff0', '#0f0'], function() {
      $('#colors_demo .tools a').append("<a href='#displaycake_doodle' data-color='" + this + "' style='width: 10px; background: " + this + ";'></a> ");
    });
    
    $(function() {
        var drawObject = $('#displaycake_doodle').sketch();
        var oldRedraw = drawObject.data('sketch').redraw;
            drawObject.data('sketch').redraw = function() {
            oldRedraw.call(this);
          display();
         }
        $(".tools a").eq(0).attr("style", "color:#fba557");
        $(".tools a").click(function() {
            $(".tools a").removeAttr("style");
            $(this).attr("style", "color:#000"); //default color black, how do i change this here?
          });
        });
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

<script src="http://intridea.github.io/sketch.js/lib/sketch.js"></script>

<canvas id="displaycake_doodle"></canvas>

<div class="demo" id="colors_demo">
 <div class="tools">

<a href="#displaycake_doodle" class="btn btn-primary" data-tool="marker"> Marker</a> <!--works fine -->
<a href="#displaycake_doodle" class="btn btn-primary" data-tool="eraser"> Eraser</a> <!-- works fine -->

<!-- COLOR PART THAT DOESN'T SHOWS UP AND CREATES AN ERROR -->
<a href="#displaycake_doodle" data-color="#f00" style="width: 10px; background: #f00;"></a>
<a href="#displaycake_doodle" data-color="#ff0" style="width: 10px; background: #ff0;"></a>
<a href="#displaycake_doodle" data-color="#0f0" style="width: 10px; background: #0f0;"></a>

  </div>

                          </div>

当我包含这些颜色时出现错误, 希望你能帮助我。非常感谢!!!!

最佳答案

经过sketch.js之后.我正在尝试重新创建您的 Canvas 。

$(function() {
    $.each(['#f00', '#ff0', '#0f0'], function() {
    
      $('#colors_demo').append("<a href='#colors_sketch' data-color='" + this + "' style='width: 30px;height: 30px;display:inline-block; background: " + this + ";'></a> ");
    });
    $('#colors_sketch').sketch();
    $('#colors_sketch').sketch({defaultColor: "#ff0"});
  });
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

<script src="http://intridea.github.io/sketch.js/lib/sketch.js"></script>

<div id="colors_demo" class="tools">
  <a href="#colors_sketch" data-download="png" style="float: right; width: 100px;">Download</a>
</div>
<div class="tools">
  <a href="#colors_sketch" data-tool="marker">Marker</a>
  <a href="#colors_sketch" data-tool="eraser">Eraser</a>
</div>
<canvas id="colors_sketch" width="800" height="300"></canvas>

希望这有帮助

关于javascript - html5 canvas 包括颜色选择,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42319123/

相关文章:

javascript - 关闭 JavaScript 切换

javascript - 如何使用 javascript 切换 MathJax 渲染与代码?

javascript - Sitecore SPEAK - 以编程方式设置搜索数据源根目录

javascript - 在日期更改时触发函数

jquery 验证器与 asp.net

javascript - 如何阻止div接受点击事件

javascript - 存储在变量中的关联数组中的访问 key

javascript - 'production' 代码中不推荐使用 jQuery .css

javascript - 将值从一个 html 页面转移到另一页面

javascript - jQuery 仅在下拉菜单中选择父 li