Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/374.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运行时错误:“$”未定义_Javascript_Jquery_Html_Canvas - Fatal编程技术网

JavaScript运行时错误:“$”未定义

JavaScript运行时错误:“$”未定义,javascript,jquery,html,canvas,Javascript,Jquery,Html,Canvas,这是一个典型的问题,但在找到真正的原因时却花了很长时间。通常,当我看到这个错误时,是因为jQuery引用在需要它的代码之后,或者返回jQuery链接,或者jQuery冲突,等等。。。到目前为止,似乎没有一个是这样的。不幸的是,为了找到解决这个问题的办法,我在一篇又一篇的文章中提到了这些案例。我相信我的问题也一样简单,但经过一个多小时的打猎,还是没有运气 编辑:其他信息。。。 为了解决这个问题,我多次重新创建了解决方案文件。是一个JavaScript Windows应用商店空白应用程序模板,我正在

这是一个典型的问题,但在找到真正的原因时却花了很长时间。通常,当我看到这个错误时,是因为jQuery引用在需要它的代码之后,或者返回jQuery链接,或者jQuery冲突,等等。。。到目前为止,似乎没有一个是这样的。不幸的是,为了找到解决这个问题的办法,我在一篇又一篇的文章中提到了这些案例。我相信我的问题也一样简单,但经过一个多小时的打猎,还是没有运气

编辑:其他信息。。。 为了解决这个问题,我多次重新创建了解决方案文件。是一个JavaScript Windows应用商店空白应用程序模板,我正在Visual studio中执行此操作。唯一的引用文件是WindowsLibraryforJavaScript1.0,我也尝试过删除它进行测试

<!DOCTYPE html>
<html lang="en">
    <head>
        <meta charset="utf-8" />
        <title>HTML5 Canvas Template</title>
        <style>
            /* styles here */
        </style>
    </head>
    <body>
        <canvas id="myCanvas" width="500" height="500">
            <p>Canvas not supported.</p>
        </canvas>

        <script type="text/javascript" src="http://code.jquery.com/jquery-1.9.1.min.js"></script>
        <script type="text/javascript">
            $(document).ready(function() {
                var canvas = $("#myCanvas").get(0);
                var context = canvas.getContext("2d");

                function renderContent()
                {
                    // we'll do our drawing here...
                }

                renderContent();
            });
        </script>
</body>
</html>
声明JQuery引用的URL不正确

试试这个:

<script src="//ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>

另一种变体,在我的例子中——我被迫使用代理。因此,应该选中-IE11->InternetOptions->Connections->LANSettings代理服务器->UseProxyServer。
还要检查jQUery脚本源的可访问性,这是我在VS2012中使用过的变体--就像在我的例子中一样,问题是我在https上呈现我的页面,但我试图通过http请求jQUery文件,这是由于安全原因被许多浏览器阻止的

我的解决办法是改变这个

<script src="http://code.jquery.com/jquery-1.9.1.min.js"></script>
…为了这个

<script src="//code.jquery.com/jquery-1.9.1.min.js"></script>

这会导致浏览器使用与呈现页面相同的http或https协议下载JQuery。

我的一些客户端出现此问题,因为他们显然阻止了从第三方站点加载Javascript。因此,现在我总是使用以下代码来包括jQuery:

<script src="//ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
<script>
window.jQuery || 
document.write('<script type="text/javascript" src="/js/jquery-1.9.1.min.js">\x3C/script>')
</script>

这样可以确保,即使我的客户端阻止从CDN域加载Javascript文件,客户端仍会从我自己的服务器下载该文件,而该服务器不会被浏览器阻止。

我收到相同的错误代码:

错误:“generateText”未定义

…在代码上

var bodyText=[The….now.]

我在我的文本编辑器Notepad++上发现,当在变量bodyText的正上方键入多行文本时,如果我没有点击回车回车回车==>WordWrap是关闭的,只需继续键入w/o回车回车回车,并让编辑器调整文本就行了


必须在记事本++的设置中?

我尝试了上面列出的所有内容,但在输入此字符串之前,似乎没有任何效果

<script src="../scripts/jquery-2.2.3.min.js" type="text/javascript"></script>
在HTML文件的头部分。下面是它的外观:

<!DOCTYPE html>
<html>
<head>

    <!-- jQuery Reference -->
    <script src="../scripts/jquery-2.2.3.min.js" type="text/javascript"></script>

    <meta charset="UTF-8" />
    <meta http-equiv="X-UA-Compatible" content="IE=Edge" />


    <title>some title</title>

</head>
<body>
...
js文件位于“scripts”文件夹下面的一个级别。
最后,错误消失了,这真是一种解脱

你尝试过不同的源代码链接吗?我只是尝试了你的代码,我没有得到那个错误。我尝试过不同的源代码链接3实际上,但感谢你检查icanc-人,我讨厌这种情况。。。但这确实告诉我问题并不局限于代码本身,可能是我的解决方案的本质出了问题。如果您将对jQuery的引用放在标记中会怎么样?尝试过了,运气不好,但感谢您的建议我能够在我的上一个链接访问该文件,但继续使用此链接的URL替换它,确认我也可以访问它。但我仍然得到了一个错误,好像我没有参考jQuery present:我在前面添加了缺少的http:,但确实尝试了它编辑:更多详细信息我想这就是你正在使用的尝试从链接下载完整的文件并测试它。这正是我学习canvas的教程集,虽然我在那里看到了许多有用的链接,但没有看到最终代码的链接。他确实提供了包含代码的JSFIDLE,但是如果您查看HTML,脚本标记会被完全忽略,这是我目前怀疑的与此问题有关的地方。为了确保没有错过下载链接,我已经查看了三次:这是我提供的JQuery链接的小提琴演示谢谢,我尝试过使用它,同样的问题在$document.ready未定义时失败。这一定是解决方案本身的问题,我已经在开发人员论坛上详细搜索过了,仍然空手而归。保佑你的灵魂!花了一整天的时间想弄清楚我做错了什么。我有完全相同的情况,就是这样!谢谢,我也有同样的问题。谢谢这不是一件好事,因为浏览器会在下载JavaScript之前阻止渲染。谷歌页面速度会告诉你这一点。