0

これが私のHTMLの始まりです。

<!DOCTYPE html>
<html>
<head>
    <script type="text/javascript" src="/Scripts/jquery-1.8.2.min.js"></script>
    <script src="/Scripts/jquery.signalR-0.5.3.js" type="text/javascript"></script>
    <script src="/Scripts/MyScript.js" type="text/javascript"></script>

    <title>Some title</title>
</head>

直前に追加してみました</head>

<script type="text/javascript" src="/signalr/hubs"></script>

しかし、それは役に立ちません。

jQueryまた、signalRスクリプト以外のすべてを削除しようとしました。

注意:(追加した場合は)を含むすべてのスクリプトjquery.signalR-0.5.3.jshubs正常に読み込まれます(Chromeの「開発者ツール」を使用してシングルステップで実行できます)。

では、なぜ$.connectionオブジェクトが定義されていないのですか?

編集:

私はすべての不要なコードをクリーンアップし、その間に次のことを発見しました。

  1. $.connection私がいるときは存在しますが、MyScript.js最初にChromeコンソールを使用してテストしようとしました。コンソールには存在しません...理由がわかりません。
  2. $.connection私はそれをテストするために、今のところ保存しsomeGlobalObjます:

    someGlobalObj = $.connection;
    

    そしてそれはうまくいきます...

だから私の更新された質問は次のようになります:どのように-come$.connectionは私のスクリプト中に表示されますが、chromeコンソールでは表示されません($、またはjQueryグローバルです)?

4

1 に答える 1

1

どのように-come$.connectionはスクリプト中に表示されますが、chromeコンソールでは表示されません($、またはjQueryはグローバルです)?

説明は2つだけです。スクリプトの後に実行されるもの(タイムアウト、その他のスクリプト)…</ p>

  • connection… jQueryオブジェクトのプロパティを削除します
  • …グローバル$(さらにはjQuery?)変数を、connectionプロパティを持たない同様のオブジェクトで上書きします。

2つ目は、他のライブラリ(Prototypeなど)も使用している場合です。

于 2012-10-25T15:29:18.243 に答える