Firefox と Chrome では問題なく動作するポートレット アプリケーションがありますが、IE 8 と 9 では爆発的に機能しますが、ポータル ページにポートレットのインスタンスが 5 つ以上ある場合に限られます。ページ上のポートレットのインスタンスが 4 つ以下の場合、IE でも正常に機能します。
ページにポートレットのインスタンスが 5 つ以上ある場合に表示されるエラーは次のとおりです。
SCRIPT87: 引数が無効です。jquery-1.5.2.min.js、16 行目の文字 25442
このコードでは、jQuery といくつかのプラグイン (jqGrid) を使用しています。問題を解決するためにこれまでに試したことは次のとおりですが、どれも違いはありません。
- jQuery および jQuery-UI ライブラリをアップグレードしました。コードはそれぞれ 1.5.2 と 1.7.2 を使用します。最新バージョンにアップグレードしても違いはありませんでした。
- jqGrid ライブラリをアップグレードしました。コードはバージョン 4.1.2 を使用します。4.3.2 にアップグレードしても違いはありませんでした。
- bgiframe プラグインをアップグレードしました。コードはバージョン 2.1 を使用します。2.1.3 にアップグレードしても違いはありませんでした。
IE であるため、デバッグして何が起こっているのかを確認するのは非常に困難です。
誰かが以前にこの動作を見たことがありますか、または何が起こっているのかについて何か考えがありますか?
アップデート:
OK、jQuery ファイルの最小バージョンを非縮小バージョンに置き換えました。IE 8 のページにポートレットのインスタンスが 5 つ以上ある場合に表示されるエラーは次のとおりです。
Message: Invalid argument.
Line: 2105
Char: 5
Code: 0
URI: https://nasa-iceint.nasa.gov/portal/ice-theme/js/jquery-1.5.2.js
jQuery ファイルからの適切なコードは次のとおりです。
if ( set ) {
// convert the value to a string (all browsers do this but IE) see #1070
elem.setAttribute( name, "" + value );
}
何か案は?