Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/google-chrome/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 为什么在我的iPad(Safari和Chrome)上渲染时,画布上会出现白线?_Javascript_Google Chrome_Ipad_Html5 Canvas_Mobile Safari - Fatal编程技术网

Javascript 为什么在我的iPad(Safari和Chrome)上渲染时,画布上会出现白线?

Javascript 为什么在我的iPad(Safari和Chrome)上渲染时,画布上会出现白线?,javascript,google-chrome,ipad,html5-canvas,mobile-safari,Javascript,Google Chrome,Ipad,Html5 Canvas,Mobile Safari,我正在使用JS一次更新一行画布。在我的笔记本电脑上,画布按预期呈现。在我的iPad上,每次刷新时,画布上的不同行都会出现白色水平线 如果我在iPad上放大或缩小,线条就会消失。有没有想过为什么会发生这种情况,以及我该如何解决?我尝试过通过上面提到的几种方法强制重新绘制浏览器窗口。这没有改变任何事情 代码如下: 以下是一个似乎有效的解决方法: c.style.zoom = c.style.zoom == "100%" ? "100.0001%" : "100%"; 每次更新后。这可能是由其设备像

我正在使用JS一次更新一行画布。在我的笔记本电脑上,画布按预期呈现。在我的iPad上,每次刷新时,画布上的不同行都会出现白色水平线

如果我在iPad上放大或缩小,线条就会消失。有没有想过为什么会发生这种情况,以及我该如何解决?我尝试过通过上面提到的几种方法强制重新绘制浏览器窗口。这没有改变任何事情

代码如下:


以下是一个似乎有效的解决方法:

c.style.zoom = c.style.zoom == "100%" ? "100.0001%" : "100%";

每次更新后。

这可能是由其设备像素比造成的。因为它有一个视网膜显示器,所有的东西都放大了2倍。改用webkitGetImageDataHD和webkitPutImageDataHD:@Derek朕會功夫 按你的建议试过了。现在,除了边框,画布内部没有渲染像素。我的ipad是一个视网膜。奇怪,为什么不画一条简单的线呢?在任何设备上都要快得多。
c.style.zoom = c.style.zoom == "100%" ? "100.0001%" : "100%";