Hybrid View
-
27 Apr 2012 1:26 AM #1
layout problems with extjs 4.1 in IE9
layout problems with extjs 4.1 in IE9
Hi,
i try to move from 4.07 to 4.1 and i have some layout problems.
This is my login form:
In Chrome it looks good but it don't works in IE. In IE i get these errors:Code:var loginForm = new Ext.form.FormPanel({ baseCls: 'x-plain', labelWidth: 75, defaultType: 'textfield', items: [{ fieldLabel: 'Benutzer', id: 'user', name: 'user', anchor:'90%' },{ fieldLabel: 'Kunde', id: 'company', name: 'company', anchor: '90%' },{ fieldLabel: 'Passwort', id: 'password', name: 'password', inputType: 'password', anchor: '90%' }], buttons: [{ text: 'Login', handler: function() { } }] }); var loginWindow = new Ext.Window({ title: 'Login', width: 300, height:160, closable:false, minWidth: 300, minHeight: 140, layout: 'fit', plain:true, modal:true, bodyStyle:'padding:5px;', items: loginForm }); loginWindow.show();
So there is something wrong with the CSS and IE9? Help needed, thanks.Code:[E] You have set frame: true explicity on this component (window) and it does not have any framing defined in the CSS template. In this case IE cannot figure out what sizes to use and thus framing on this component will be disabled. [E] You have set frame: true explicity on this component (header) and it does not have any framing defined in the CSS template. In this case IE cannot figure out what sizes to use and thus framing on this component will be disabled. [E] You have set frame: true explicity on this component (button) and it does not have any framing defined in the CSS template. In this case IE cannot figure out what sizes to use and thus framing on this component will be disabled.
-
27 Apr 2012 6:30 AM #2
The following displays fine on my IE9 VM:
...added Ext.onReady() .. without it displays incorrectly as shown.
Code:Ext.onReady(function(){ var loginForm = new Ext.form.FormPanel({ baseCls: 'x-plain', labelWidth: 75, defaultType: 'textfield', items: [{ fieldLabel: 'Benutzer', id: 'user', name: 'user', anchor:'90%' },{ fieldLabel: 'Kunde', id: 'company', name: 'company', anchor: '90%' },{ fieldLabel: 'Passwort', id: 'password', name: 'password', inputType: 'password', anchor: '90%' }], buttons: [{ text: 'Login', handler: function() { } }] }); var loginWindow = new Ext.Window({ title: 'Login', width: 300, height:160, closable:false, minWidth: 300, minHeight: 140, layout: 'fit', plain:true, modal:true, bodyStyle:'padding:5px;', items: loginForm }); loginWindow.show(); });
-
1 May 2012 11:49 PM #3
Hi,
yes you are right. If i move the whole block just behind the Ext.onReady call it works. There are a few functions and defines just before the login form. Strange behavior! So the order is important in IE.
Thank you!
-
2 May 2012 12:46 AM #4
The order is important everywhere, it's more likely you're just getting lucky with the other browsers
Evan Trimboli
Sencha Developer
Twitter - @evantrimboli
Don't be afraid of the source code!
-
14 Feb 2013 2:47 PM #5
where is Ext.onReady() supposed to go in an application. Doesn't the launch() method of the application get called when the DOM is ready?
-- Patrick
-
14 Feb 2013 3:00 PM #6
The launch method is triggered by onReady, so you're already there by that point.
Evan Trimboli
Sencha Developer
Twitter - @evantrimboli
Don't be afraid of the source code!
-
14 Feb 2013 3:04 PM #7
Here is a good explanation:
http://loongest.com/sencha/extjs-v4-...dy-ext-onload/
Scott.Code:Ext.application({ // page ready, mvc launch : function () { // launch after ready } });
Looks like we can't reproduce the issue or there's a problem in the test case provided.


Reply With Quote