1

私はAngularの初心者で、コードを学ぶために小さなサンプルを試しています. まず、stackoverflow.com に投稿された素晴らしいソリューションに感謝したいと思います。不必要なデバッグから何時間も節約できました。

シンプルなエキスパンダー折りたたみコンポーネントを作成しています。angular js ebook で利用可能なコード。

同じhttp://plnkr.co/edit/f2u32x2w0FJK1AzvVPEx?p=preview のプランクを作成しました コンポーネントはうまく機能します。IE 8で次のエラーが発生するという事実を除いて:

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

コンポーネントは正常にレンダリングされます。しかし、常にそれに伴って発生するこのエラーがあります。

犯人は次の行であることが判明しました。

<expander class='expander' ng-repeat='expander in expanders' expander-title='expander.title'>{{expander.text}}</expander>

具体的には次の部分です。

{{expander.text}}

ここで何が間違っているのか教えてもらえますか? 子ディレクティブの内容をそのテンプレートにトランスクルージョンしているだけです。次に、子を親に変換します。ここでの問題は何ですか? :(

4

2 に答える 2

1

<expander>問題は、 IE が認識しないカスタム HTML 要素 ( ) の使用にあります。サポートされている要素 ( など<div expander>...</div>) で属性表記を使用するか、JavaScript で要素を作成して、IE が認識できるようにします。

document.createElement('expander');

参考文献

  1. AngularJS: Internet Explorer の互換性
于 2013-10-08T12:31:31.117 に答える