2011-07-15 12 views
0

私はTreePanelでアプリケーションを開発しました。 IEで奇妙な動作があります(IE 7,8でテスト済み)。なぜTreePanelノードとIEのバグ?

ノードをクリックすると、画面が画面の中央に移動します。 それは私のページにアンカーがあるように...!私TreePanelこのlikt定義され

:私は解決策を見つけることができる場所

  var monPretree = Ext.create('Ext.tree.Panel',{ 
      id : 'treepanel', 
      title : 'Tree Tasks', 
      width : 500, 
      animate : false, 
      activeItem : 1, 
      useArrows : true, 
      autoScroll : true, 
      singleExpand : false, 
      store : monPrestore, 
      enableDD : true, 
      rootVisible : false, 

      viewConfig : { 
       plugins : { 
        ptype: 'treeviewdragdrop' 


       } 

      }, 

私にはわからない...多分誰かがこれまでと同じ問題を満たしていますか?

私の問題を解決するには、折りたたみノードを無効にすることが可能ですか? treePanelを常に展開して折りたたみモードを禁止するには?

ありがとうございます!

答えて

0

ノードの拡張を禁止するには、いくつかの方法があります。最も単純な方法は、それを子供にして拡大することを不可能にする葉にすることです。 ほとんどの場合、ツリーのJSONをリターンするときに、拡張/開くべきではないノードに属性leaf:trueを追加するだけです。

[ 
    { 
     "id":"1", 
     "name":"Node ONE", 
     "leaf":true 
    }, 
    { 
     "id":"2", 
     "name":"Node TWO", 
     "leaf":true 
    }, 
    { 
     "id":"3", 
     "name":"Node THREE", 
     "leaf":true 
    } 
] 

これを実現するもう1つの方法は、展開状態をtrueに設定し、ノードにも子孫を追加しないことです。

[ 
    { 
     "id":"1", 
     "name":"Node ONE", 
     "expanded":true, 
     "children":[] 
    }, 
    { 
     "id":"2", 
     "name":"Node TWO", 
     "expanded":true, 
     "children":[] 
    }, 
    { 
     "id":"3", 
     "name":"Node THREE", 
     "expanded":true, 
     "children":[] 
    } 
] 
+0

あなたの答えはThanですが、もし私が葉の各ノードを "変換"すれば、私は木の機能を失ってしまいます!ツリー上にディレクトリとファイルを表現する必要があります。各ノードをリーフにできません。 私が追加すると、 'Expanded:true'は折り畳み禁止モードではありませんか?私はIEのバグを解決していません:( – Mepps

+0

あなたはまだ展開したいが、崩壊したくないのですか?IEのバグについては、javascriptのエラーが出て、開発者のコ​​ンソール(F12)を確認してください。 – ChrisR

+0

はい、 開発者コンソールでエラーが発生していません..! 「バグ」が表示されたら私のコードをテストできませんか? ? [link](http://www.play-host.net/files/1310820880.zip) index.htmlページのextjs 'librairies linkを変更する必要があります! – Mepps