sketch.js仅在iPhone上刷新后才有效

时间:2014-05-30 18:47:29

标签: javascript jquery html ruby-on-rails

我对我得到的错误感到非常困惑。我很难描述和提供信息,但我尝试:

我将sketch.js Paintingtool放在我的网站上。在iPhone上它不起作用所以我搜索了一个解决方案。 Here我终于找到了它,然后我将它添加到代码中,我刷新了我的页面并且一切正常。

然后我添加了this code in my function what you see below.

现在我再次尝试使用iPhone,但它无效。 当我刷新页面时,它可以毫无问题地工作。

将笔记本电脑放在最新的Chrome浏览器上,一切都无需刷新。

我不能在Javascript代码中组合jQuery吗?

这里是我使用的代码:

<div id="test">
<canvas id="tools_sketch"></canvas>
    <script>
        (function() {

            var canvas = document.getElementById('tools_sketch'),
                        context = canvas.getContext('2d');  

            // resize the canvas to fill browser window dynamically
            window.addEventListener('resize', resizeCanvas, false);

            function resizeCanvas() {
                canvas.height = window.innerHeight;
                canvas.width = infobox.offsetWidth;

                $(function() {      
                            $('#tools_sketch').sketch();
                });
            }
            resizeCanvas(); 
        })();
        </script>
</div>

<div class="tools center">
    <a class="btn btn-primary" href="#tools_sketch" data-tool="marker">Pen</a>
    <a class="btn btn-primary" href="#tools_sketch" data-tool="eraser">Rubber</a>
    <a class="btn btn-primary" href="#tools_sketch" data-download="png">Send</a>
</div>

感谢您阅读

修改 当我将官方sketch.js中的代码添加到服务器上的新文件并重置其他文件时,它可以在iPhone上运行。当我然后改变一行它破碎。当我再次重置此线时,它仍然被打破。 WTF!

EDIT2: 在2008年的Firefox 3.0上,它也适用于2008年的Safari 3.1 - &gt;不是旧的浏览器问题

1 个答案:

答案 0 :(得分:0)

经过很长时间(将近一个月),我的问题得以解决。

出现此问题的原因是我使用了turbolinks

简单且非常简单的解决方案是将turbolinks宝石更改为jQuery turbolinks

现在它没有问题。

相关问题