日期:2014-05-19  浏览次数:20789 次

谁能分析下这段js代码
function createNodes(navigateType, types)
{//子节点添加
var node_app = myroot.appendChild(new Ext.tree.TreeNode(
{
id :'n'+navigateType.id,
icon :navigateType.icon, 
expanded :navigateType.expanded,
text : navigateType.text
}));

Ext.each(types, function(item, index)
{

node_app.appendChild(new Ext.tree.TreeNode(
{
id:item.id,
text :item.text, 
expanded :item.expanded, 
icon :item.icon, 
href :item.href, 
hrefTarget :"center_id",

listeners:{
'click':function(node,event){
event.stopEvent();
contentPanel = Ext.getCmp('center_id');
var n=contentPanel.getComponent(node.id);
if(!n){////判断是否已经打开该面板
n=contentPanel.add({
'id':node.id,
'title':node.text,
closable:true,
html:'<iframe scrolling="auto" frameborder="0" width="100%" height="100%" src="'+item.href+'"></iframe>',
layout :'fit'

});
}
alert(item.href);
contentPanel.setActiveTab(n);  
 
// var n=contentPanel.getComponent(node.id);
// console.debug(n.getLayout());
  }
  }
}));
})
}
这段代码中的item是怎么样得到它的属性的,我看了其他地方的代码,没有看到参数传给item

------解决方案--------------------
Ext.each(types, function(item, index)
LZ好好看看each函数的说明;
item 是表示每个type项,
index,是每个type的索引。