15

SimpleModalはjQuery1.8.0およびIE9で失敗し、次のエラーが発生します。

SCRIPT438:オブジェクトはプロパティまたはメソッド'removeExpression'をサポートしていません

次のフィドルは次のことを示しています(IE9で実行することを忘れないでください

http://jsfiddle.net/ericjohannsen/ZVEWa/1/

jQueryを1.7.2に切り替えると、エラーがなくなります。

これを回避する方法はありますか?

おそらく関連している(OPによると、問題はjQuery 1.7.1とiframeにあるとのことです)

SimpleModalはIE9(Iframe内)では機能しません

無関係(jQuery 1.5の問題)

IE9の単純なモーダルの問題

4

5 に答える 5

44

更新された回答を提供するためだけに(2013年8月2日現在)、まったく同じバグを探しているときにこの投稿に出くわしたので...

上記のコメントでsalgizaが指摘したように、jQuery 1.10に変更が加えられ、SimpleModal$.support.boxModelの最新バージョンが使用するのサポートが終了しました。

この問題を解決するには、SimpleModalソースコードの次の行を変更する必要があります。

        // (Line 239) $.support.boxModel is undefined if checked earlier
        //browser.ieQuirks = browser.msie && !$.support.boxModel;
        browser.ieQuirks = browser.msie && (document.compatMode === "BackCompat");
于 2013-08-02T17:31:32.783 に答える
12

$.boxModelを$.support.boxModelに変更することで、問題を解決できるようです。更新されたバージョンはhttp://github.com/ericmmartin/simplemodalで入手できます。

間もなく、最小バージョンの完全にパッケージ化されたリリースを取得しようとします。

[編集]SimpleModal1.4.3がリリースされ、この問題を解決するはずです

于 2012-08-26T02:20:06.677 に答える
1

上記と同じエラーが発生しました'オブジェクトはプロパティまたはメソッド'removeExpression''をサポートしていません。IEを除くすべてのブラウザでモーダルウィンドウがポップアップ表示されました。(ファイルjquery.simplemodal.jsの縮小されていないバージョン1.4.3を使用)

try {} catch (e) {}すべての動的プロパティを配置することで修正しました。

例えば

try {
  s.removeExpression('top');
}
catch (e) {
  //The support for dynamic properties has been removed in Internet Explorer 9
}

モーダルウィンドウがすべてのブラウザに表示されるようになりました。

于 2012-12-20T11:27:12.360 に答える
1

「Expression」の機能検出でうまくいきます。修正プログラムを確認してください。

https://github.com/ericmmartin/simplemodal/pull/34 https://github.com/redaxmedia/simplemodal/blob/master/src/jquery.simplemodal.js

于 2013-07-10T15:14:07.400 に答える
0

他の回答で提案された更新は問題を修正しませんでした。removeExpressionこのエラーは、setExpressionIE9では使用できないという事実が原因です。どちらかの式を使用しているものをコメントアウトすることで、自分のサイトの問題を修正しました(IE6–7の互換性は気にしません)。

于 2012-09-05T01:22:25.393 に答える