次の問題が発生しています。コードは次のとおりです。
// into some function invoked from ng-click
var msgbox = $dialog.messageBox(
'Some Title',
"Some message body", [{
label: 'Button 1',
result: 'RESULT 1',
}, {
label: 'Button 2',
result: 'RESULT 2',
}, {
label: 'Button 3',
result: 'RESULT 3',
}]);
console.log('opening...');
msgbox.open().then(function (result) {
console.log('result...');
switch (result) {
case 'RESULT 1':
// do something here
break;
case 'RESULT 2':
// do something else here
break;
case 'RESULT 3':
default:
// do nothing here
break;
}
});
Chrome (v28.0.1500.95) および Firefox (v22) では、then anonymous 関数が呼び出され、両方のログがコンソールに表示されます。アプリケーションは期待どおりに機能します。
IE10 (v10.0.9200) では、then関数は呼び出されません。最初のログのみが表示されます。
ボタンをクリックしてダイアログを閉じると、UI が応答しなくなります。ボタンまたは他の UI コントロールをクリックしても効果はありません (ただし、垂直スクロールバーは機能します)。
以前に IE Dev ツールでデバッグを有効にしていた場合、別の IE Dev ウィンドウの応答も非常に遅くなります。何かが無限ループに陥ったのではないかと思い、実行を一時停止しました。しばらくすると、Dev ウィンドウには通常、jQuery Event addEvent メソッドの行が表示されました。
使用している主なライブラリ: JSON3 3.2.4、jQuery 1.9.1、jQuery UI 1.10.1、AngularJS 1.0.5、AngularUI 0.4.0、Angular UI Bootstrap 0.2.0。
誰かが同様の問題を経験しましたか?