2011-07-15 52 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 
    } 
] 

实现此目的的一种替代方法是将扩展状态设置为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

Thans给你的答案,但如果我“转换”叶上的每个节点,我松了我的树功能!我需要在我的树上表示目录和文件,我不能在叶上创建每个节点! 如果我添加'Expanded:true'我不禁止可折叠模式?!我不是sur解决了IE错误.. :( – Mepps

+0

所以你还想扩展,但不崩溃?关于IE错误,你会得到任何javascript错误,检查开发者控制台(F12)。 – ChrisR

+0

是的,我的意思是如果当我点击一个节点,屏幕移动也许如果我扩大所有节点可能比解决问题!? 我没有在开发者控制台上的错误..! 你不能测试我的代码,如果你看到“bug “? [链接](http://www.play-host.net/files/1310820880.zip) 您必须更改index.html页面上的extjs'librairies链接! – Mepps

相关问题