gpt4 book ai didi

javascript - Rails 4 turbolinks 导致 html Canvas 在 ipad 上消失

转载 作者:行者123 更新时间:2023-11-30 05:43:23 25 4
gpt4 key购买 nike

我正在使用 Ruby on Rails 4。-- app/views/layouts/application.html.erb 包含:

<!DOCTYPE html>
<html>
<head>
<%= javascript_include_tag "application" %>
</head>
<body>
<canvas id="can"></canvas>
<%= link_to "link to here", "#" %>
<button onclick="task()" >make square</button>
</body>
<script>
function task(){
var c = document.getElementById("can");
var ctx = c.getContext("2d");
ctx.fillStyle="#FF0000";
ctx.fillRect(0,0,c.width,c.height);
}
</script>
</html>

--app/assets/javascripts/application.js 包含:

//= require turbolinks

此程序在我的 Chrome 和 Firefox 工作站上运行良好。但是,在 Safari 中的 ipad 上,当我单击链接时,我无法再通过单击按钮使 Canvas 重新出现。当我重新加载页面时,该按钮有效。如果我删除 application.html.erb 的第 4 行,则 Safari 的行为类似于 Chrome,并且该按钮始终有效。但是,如果没有第 4 行,链接将不再导致框消失。

这是我的第一个 Rails 项目。我在这里完全不知所措,将不胜感激任何帮助、见解、线索或建议。先感谢您。 --laertiades

最佳答案

我认为 turbolinks 有一些错误。

我试图在我的网站上实现 skrollr,

并且 turbolinks 导致了某种阻止 skrollr 的错误

在重新加载/返回命令时正常工作。

您可能遇到了与我相同的问题。

输入一些 console.log 语句,看看您的页面是否立即被加载了两次。

第二次加载时,显示日志,但不显示行号。

我还没有弄清楚这一点,所以我只是从我的应用程序中删除了 turbolinks。

Turbolinks“使您的应用程序中的后续链接更快”,

因此它不是您必须在应用程序中保留的必要功能。

您可以简单地删除该行

//=require turbolinks 

关于javascript - Rails 4 turbolinks 导致 html Canvas 在 ipad 上消失,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19469287/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com