首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >HTML5帆布铬碎44.0.2403.125米

HTML5帆布铬碎44.0.2403.125米
EN

Stack Overflow用户
提问于 2015-08-04 14:19:36
回答 1查看 191关注 0票数 0

帆布笔画()在铬版44中似乎坏了参见测试:https://jsfiddle.net/n9ds4q8m/点击测试按钮在FF/IE中工作得很好,甚至边缘。网格不显示在Chrome,但过去?

代码语言:javascript
运行
AI代码解释
复制
var canvas = document.getElementById("drawing");
        //  if the canvas element exists 
        if (canvas != null) {
            var ctx = canvas.getContext("2d");
            ctx.setLineDash([null]);
            ctx.lineWidth = 0.5;
            ctx.strokeStyle = "#eeeeee";

            // horizontal grid lines
            for (var i = 0; i <= canvas.height; i = i + 10) {
                ctx.beginPath();
                ctx.moveTo(0, i);
                ctx.lineTo(canvas.width, i);
                if (i % parseInt(50) == 0) {
                    ctx.lineWidth = 2;
                } else {
                    ctx.lineWidth = 0.5;
                }
                ctx.closePath();
                ctx.stroke();
            }

            // vertical grid lines
            for (var j = 0; j <= canvas.width; j = j + 10) {
                ctx.beginPath();
                ctx.moveTo(j, 0);
                ctx.lineTo(j, canvas.height);
                if (j % parseInt(50) == 0) {
                    ctx.lineWidth = 2;
                } else {
                    ctx.lineWidth = 0.5;
                }
                ctx.closePath();
                ctx.stroke();
            }

        }

    }

HTML:<body> <form id="form1" runat="server"> <div><input type="button" onclick="draw()" value="test" /> <canvas id="drawing" width="800" height="550" style="position: relative; cursor: crosshair; border: 1px solid #000; z-index: 10; -ms-touch-action: none; touch-action: none;"></canvas> </div> </form> </body>

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-08-04 15:34:50

很高兴你注意到了这一点。几天前我就注意到了,但直到今天我才真正开始调查。我把问题收窄了。它不喜欢ctx.setLineDash([null]);部分。在我的代码中,我使用的是ctx.setLineDash([0,0]);,它也不喜欢这样。

经过进一步的调查,0,0似乎没有任何意义,尽管Firefox允许这样做。此外,null不符合规范。因此,制作实线的最佳方法是ctx.setLineDash([]);

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31820358

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档