2
<script type="text/javascript" src="/Scripts/jquery-1.8.2.min.js"></script>
<script type="text/javascript" src="/Scripts/jquery.mobile-1.2.0.min.js"></script>
<script type="text/javascript">
    console.log(jQuery.mobile !== undefined && 'good'); // prints 'good'!
</script>

<script type="text/javascript" data-main="/comp/pages/Index.js" src="/Scripts/require.js></script>

<script type="text/javascript">
    console.log(jQuery.mobile !== undefined && 'good'); // prints 'good'!
</script>

しかし、私のIndex.js中では、jQuery.mobile消えます:

require([], function (view) {
    console.log(jQuery.mobile === undefined && 'undefined!'); // prints 'undefined!'
});

どうすれば元にmobile戻すことができjQueryますか?(私は明らかにいくつか mobileを持っていることを気にしませんが、それを明確にするために..で使用するjQueryことに興味があります..)jQuery MobileRequireJS

編集1:

requireIndex.jsに追加しようとしました:

console.log(jQuery.mobile === undefined && 'undefined!'); // prints 'undefined!'
require(['/Scripts/jquery-1.8.2.min.js', '/Scripts/jquery.mobile-1.2.0.min.js'],
    function (jQuery,jqm, view) {

    console.log(jQuery.mobile === undefined && 'undefined!'); // prints 'undefined!'
});
4

4 に答える 4

1

どのようにしてindex.jsをロードできましたか?
RequireJSはファイルに.jsを追加するため、代わりに/comp/pages/Index.js次を使用する必要があります /comp/pages/Index

<script type="text/javascript" data-main="/comp/pages/Index" src="/Scripts/require.js></script>
于 2012-11-13T11:04:07.480 に答える
0

RequireJSとjQueryを正しく設定していることを前提としています。

Index.jsファイルでは、jQueryおよびjQueryモバイルファイルが必要です。例えば:

require ("/Scripts/jquery");
require ("/Scripts/jquery.mobile");

また、ファイル名にバージョン番号が含まれないようにファイルの名前を変更する必要があることも指摘します。これにより、コードを変更せずに新しいリリースに更新できます。

于 2012-11-13T11:00:07.497 に答える
0

まず、古いバージョンのjQueryMobileを試してください。

jQuery 1.8.2はRequireJSでは機能しません。また、最新バージョンのjQueryMobileでも機能する可能性があります。

また、コードにjQueryおよびjQuerymobileJSファイルが必要であることを確認する必要があります。

このスレッドをチェックする必要があると思います: requireJSとjQueryを一緒に使用するにはどうすればよいですか?

ロブ

于 2012-11-13T11:00:16.060 に答える
0

これは私の回避策です。最新の状態では解決策が見つかりませんでした。グローバルオブジェクト/関数をグローバル変数にjQuery含めた直後に保存します。HTMLmyGlobalObject

<link rel="stylesheet" href="content/jqm/jquery.mobile-min.css"/>
<script src="content/jqm/jquery.min.js" type="text/javascript"></script>
<script src="content/jqm/jquery.mobile-min.js" type="text/javascript"></script>
<!--jQuery RequireJS issue workaround:-->
<script type="text/javascript"> window.myGlobalObject = { jQuery:jQuery }; </script>

次に、このグローバルオブジェクトを使い慣れjq.jsた形式で返す新しいファイルを定義します。RequireJS

define(function(){
    return myGlobalObject.jQuery;
});

そして、必要なときはいつでも、この「中間」モジュールを使用します。

require(['/content/jq.js'], function ($) {
    ...
});
于 2012-11-24T22:37:46.350 に答える