JavaScript运行时错误:' $'在Windows应用程序开发中未定义

时间:2014-03-22 16:59:54

标签: javascript jquery html windows

我正在使用Visual Studio开发Windows 8.1应用程序,使用HTML,CSS,jQuery(允许使用JavaScript),因为我在下面的博客中看到我也可以使用jQuery来开发应用程序。

http://blogs.windows.com/windows/b/appbuilder/archive/2013/07/10/jquery-and-winjs-working-together-in-windows-store-apps.aspx

所以,我在HTML页面中也包含了jQuery 2.1.0文件:

<script src="/js/jquery-2.1.0.js"></script>

连接jQuery文件时没有错误:

enter image description here

然后是HTML代码。

现在js如下:

// For an introduction to the Blank template, see the following documentation:
// http://go.microsoft.com/fwlink/?LinkId=232509
(function () {
    "use strict";

    var app = WinJS.Application;
    var activation = Windows.ApplicationModel.Activation;

    app.onactivated = function (args) {
        if (args.detail.kind === activation.ActivationKind.launch) {
            if (args.detail.previousExecutionState !== activation.ApplicationExecutionState.terminated) {
                // TODO: This application has been newly launched. Initialize
                // your application here.
            } else {
                // TODO: This application has been reactivated from suspension.
                // Restore application state here.
            }
            args.setPromise(WinJS.UI.processAll());
        }
    };

    app.oncheckpoint = function (args) {
        // TODO: This application is about to be suspended. Save any state
        // that needs to persist across suspensions here. You might use the
        // WinJS.Application.sessionState object, which is automatically
        // saved and restored across suspension. If you need to complete an
        // asynchronous operation before your application is suspended, call
        // args.setPromise().
    };
    $('p').click(function () { /* <---- from here */
        $(this).html('Some text! hehehe..Sorry!');
    });
    app.start();
})();

我知道,jQuery只会在我编写时执行:

$(document).ready(function() {
   /* '$' will be defined in this block */
}

但是,我如何在这个js函数中使用jQuery代码,因为我没有任何想法和我搜索的每篇博文,只有教程告诉我有关jQuery代码的用法,而不是如何实现它或如何定义$字符。

谢谢!

3 个答案:

答案 0 :(得分:0)

如果jQuery库没有正确链接,则jQuery指令$是未定义的。

请确保在其他所有内容之前将其链接到页面顶部,并确保您的相对路径正确。

答案 1 :(得分:0)

也许你和其他人有冲突?看看这里,看它是否有帮助http://learn.jquery.com/using-jquery-core/avoid-conflicts-other-libraries/

答案 2 :(得分:0)

问题我看到你附加的图像后发现你包含了jQuery而不是顶部,对于jQuery,如果你的jQuery文件在你使用它之前加载了$。所以通过移动顶部的jQuery文件将解决问题。

  

jq