您好我正在使用 ExtJs 和 flickr API 创建一个 flickr 搜索。当我使用 XTemplate 在面板中渲染图像时检索 json 响应后,div 被添加到它之前的 div 中。它成为包含图像的上述 div 的子项。
负责它的代码是这样的:
JSONPStore.on('load', function(){
var record = JSONPStore.getAt(0);
if(record){
data = record.raw.photos.photo;
//console.log(JSONPStore);
var newEl = Ext.create('Ext.panel.Panel', {
width: 1240,
margin: '0 20 0 20',
id: 'pnlEl',
store: JSONPStore,
overflowY: 'auto',
items: [
{
xtype: 'panel',
id: 'toBeAdded',
overflowY: 'auto',
width: 600,
layout: 'fit',
style: "margin:15px",
bodyStyle: "padding:5px;font-size:11px;",
listeners:{
render: function(){
var tpl = new Ext.XTemplate(
'<tpl for=".">',
//'<div class="actualImg">',
'<div>',
'<span>{title}</span>',
'<img src="http://farm{farm}.staticflickr.com/{server}/{id}_{secret}.jpg"',
'</div>',
'</tpl>'
);
//console.log(this);
tpl.append(this.body, data);
}
}
}
]
});
if(vport.layout.align === 'stretch'){
vport.add(newEl) ;
vport.doComponentLayout();
}
}
else{
console.log('Not Defined');
}JSONPStore.on('load', function(){
var record = JSONPStore.getAt(0);
if(record){
data = record.raw.photos.photo;
//console.log(JSONPStore);
var newEl = Ext.create('Ext.panel.Panel', {
width: 1240,
margin: '0 20 0 20',
id: 'pnlEl',
store: JSONPStore,
overflowY: 'auto',
items: [
{
xtype: 'panel',
id: 'toBeAdded',
overflowY: 'auto',
width: 600,
layout: 'fit',
style: "margin:15px",
bodyStyle: "padding:5px;font-size:11px;",
listeners:{
render: function(){
var tpl = new Ext.XTemplate(
'<tpl for=".">',
//'<div class="actualImg">',
'<div>',
'<span>{title}</span>',
'<img src="http://farm{farm}.staticflickr.com/{server}/{id}_{secret}.jpg"',
'</div>',
'</tpl>'
);
//console.log(this);
tpl.append(this.body, data);
}
}
}
]
});
if(vport.layout.align === 'stretch'){
vport.add(newEl) ;
vport.doComponentLayout();
}
}
else{
console.log('Not Defined');
}
}, 这);
我想用面板内的 div 创建一个类似平铺的结构。但这是在其他 div 中创建 div。
谢谢。