そこで、Backbone.jsを使用してメッセージングシステムを作成しました。ChromeとFFで正常に動作しますが、IE9にはそれを強制終了する特定のフェッチ呼び出しに関する問題があります。(私はMVC3で働いています)。
着信する新しいメッセージをチェックするポーリングがあり、サーバーに日付が送信されます。ポーリングは次のメソッドで呼び出されます。
DoMessageFetch = function() {
var now = new Date().toUTCString();
Chat.mymessages.fetch({
cache: false,
data: {
Now: now
},
success: function (response) {
// if there are messages ...
// for each message, open a chat window
if (Chat.mymessages.length > 0) {
for (var i = 0; i < Chat.mymessages.length; i++) {
var useridto = Chat.mymessages.at(i).get("UserId");
var name = Chat.mymessages.at(i).get("ScreenName");
// a chat-window with this useridto is NOT on the page
if (!($('#chat-window-' + useridto).is(':visible'))) {
Chat.doChatMessageFetch(name, useridto, null); // this constructs a Backbone view
}
}
}
},
error: function () { console.log('ERROR: fetching general poll messages failed.'); }
});
Chat.mymessages.reset();
}
IE9では、コントローラーでブレークポイントを監視すると、Nowパラメーターがnullになります。これは、リクエストがサーバー上の間違ったコードパスをたどることを意味します...
私のNowパラメーターがIEのどこにあるのかわかりません。誰か助けてもらえますか?