rezib
28 Apr 2010, 2:07 PM
Hello friends,
I have been working on an interesting little application that will make extensive use of managed IFrames. It is built around a container with a splitter where there is a TabPanel container on the left and a regular Panel on the right into which I may drop any number of ManagedIFramePanel objects. The panel on the right is collapsible.
During my unit testing I have found that the ManagedIFramePanel that is contained in the right hand panel gets re-loaded every time I collapse the panel and then again every time I expand the panel.
When I expand it the second time, it throws the following exception.
uncaught exception: [Exception... "Component returned failure code: 0x80004005 (NS_ERROR_FAILURE) [nsIDOMEventTarget.removeEventListener]" nsresult: "0x80004005 (NS_ERROR_FAILURE)" location: "JS frame ::...
Here is the onReady code...
Ext.onReady(function()
{
new Ext.Container(
{
layout: 'border',
renderTo: 'portalBody',
width: '100%',
height: '100%',
items: [
{
xtype: 'tabpanel',
region: 'center',
width: '70%',
split: true,
activeTab: 0,
items: [<?=$portal['infotabs']?>]
},
{
xtype: 'panel',
region: 'east',
width: '30%',
split: true,
collapsible: true,
collapseMode: 'mini',
header: false,
layout: 'absolute',
defaults: { x: 0, y: 0, anchor: '100% 100%', border: false },
items: [<?=$portal['controltabs']?>]
}
],
});
Here is the PHP code that defines 'controltabs'
$portal['controltabs'] = <<<CONTROLTABS
new ....ts.IFramePanel(
{
autoDestroy: false,
defaultSrc: 'http://localhost/ZendServer'
})
CONTROLTABS;
and here is the declaration of the ....ts.IFramePanel
....ts.IFramePanel = Ext.extend(Ext.ux.ManagedIframePanel,
{
disableMessaging: false,
animCollapse: false
});
Can someone help me to determine how to preserve the content between collapse and expand events?
Thanks in advance.
I have been working on an interesting little application that will make extensive use of managed IFrames. It is built around a container with a splitter where there is a TabPanel container on the left and a regular Panel on the right into which I may drop any number of ManagedIFramePanel objects. The panel on the right is collapsible.
During my unit testing I have found that the ManagedIFramePanel that is contained in the right hand panel gets re-loaded every time I collapse the panel and then again every time I expand the panel.
When I expand it the second time, it throws the following exception.
uncaught exception: [Exception... "Component returned failure code: 0x80004005 (NS_ERROR_FAILURE) [nsIDOMEventTarget.removeEventListener]" nsresult: "0x80004005 (NS_ERROR_FAILURE)" location: "JS frame ::...
Here is the onReady code...
Ext.onReady(function()
{
new Ext.Container(
{
layout: 'border',
renderTo: 'portalBody',
width: '100%',
height: '100%',
items: [
{
xtype: 'tabpanel',
region: 'center',
width: '70%',
split: true,
activeTab: 0,
items: [<?=$portal['infotabs']?>]
},
{
xtype: 'panel',
region: 'east',
width: '30%',
split: true,
collapsible: true,
collapseMode: 'mini',
header: false,
layout: 'absolute',
defaults: { x: 0, y: 0, anchor: '100% 100%', border: false },
items: [<?=$portal['controltabs']?>]
}
],
});
Here is the PHP code that defines 'controltabs'
$portal['controltabs'] = <<<CONTROLTABS
new ....ts.IFramePanel(
{
autoDestroy: false,
defaultSrc: 'http://localhost/ZendServer'
})
CONTROLTABS;
and here is the declaration of the ....ts.IFramePanel
....ts.IFramePanel = Ext.extend(Ext.ux.ManagedIframePanel,
{
disableMessaging: false,
animCollapse: false
});
Can someone help me to determine how to preserve the content between collapse and expand events?
Thanks in advance.