Bug #26618
closedIE7 bug on changing block fomat (FormatBlock box)
0%
Description
Hi there !
There is a problem with 4.4.x & rtehtmlarea with IE7.
When You are trying to change the block format, You have the following error :
The error message I could get with IE8 in developer's simulation IE7 mode.
Webpage error details
User Agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; .NET CLR 2.0.50727; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729)
Timestamp: Wed, 4 May 2011 10:13:00 UTC
Message: 'Ext.fly(...)' is null or not an object
Line: 7
Char: 31313
Code: 0
URI: typo3temp/compressor/ext-all-d616005ff3094ac3a5117ade5de61c95.js.gzip
I've looked in ext-all.js, the error is in the following code :
getXY:function(){return this.xy},getTarget:function(e,g,d){*return e?Ext.fly(this.target).findParent(e,g,d):(d?Ext.get(this.target):this.target)*}
Could You advice, something, please.
At the moment, we couldn't move the site to 4.5, so we are looking for solutions without the upgrade of TYPO3.
Updated by Fedir RYKHTIK about 13 years ago
- Project changed from TYPO3 Core to 276
Updated by Fedir RYKHTIK about 13 years ago
- Project changed from 276 to TYPO3 Core
Updated by Mickaël PERRIN about 13 years ago
- Target version set to 1061
We are ready to sponsor a quick resolution of this bug (invoice needed) : 150€.
Many thanks
Updated by Fedir RYKHTIK about 13 years ago
After JS compressions disable, there is an uncompressed version of the ExtJS method, which shows the error.
In TYPO3 4.5 this method is the same, so the problem was resolved somewhere else on higher level, probably in rtehtmlarea, as in TYPO3 4.5 it's possible to switch the elements of FormatBlock selector with IE7.
/** * Gets the target for the event. * @param {String} selector (optional) A simple selector to filter the target or look for an ancestor of the target * @param {Number/Mixed} maxDepth (optional) The max depth to search as a number or element (defaults to 10 || document.body) * @param {Boolean} returnEl (optional) True to return a Ext.Element object instead of DOM node * @return {HTMLelement} */ getTarget : function(selector, maxDepth, returnEl){ return selector ? Ext.fly(this.target).findParent(selector, maxDepth, returnEl) : (returnEl ? Ext.get(this.target) : this.target); },
Updated by Oliver Hader about 13 years ago
- Target version changed from 1061 to 1264
Updated by Stefan Neufeind almost 13 years ago
Getting a similar Ext.fly(...) error with IE7 in 4.5.3. Just opening and saving back a record seems to be enough to trigger it. Looking into it now.
Updated by Stefan Neufeind almost 13 years ago
Please adjust the function getTarget() in your ext-all.js from:
return g?Ext.fly(this.target).findParent(g,h,e):(e?Ext.get(this.target):this.target)
to read:
var target=(this.target||window.event.srcElement);return g?Ext.fly(target).findParent(g,h,e):(e?Ext.get(target):target)
The problem is that IE7 doesn't have the target but uses srcElement instead and doesn't populate it below this but attaches the event to the window. This works fine for me in 4.5.3 when working with workspaces. Would appreciate feedback if that helps your issue on 4.4.x as well.
I'll prepare a patch afterwards.
PS: Function is still unchanged upstream even in ExtJS 4.0.2a :-)
Updated by Mr. Hudson almost 13 years ago
Patch set 1 of change I1d7fd80126c980f1fd06ca4b5499e044f91e4147 has been pushed to the review server.
It is available at http://review.typo3.org/3385
Updated by Stanislas Rolland almost 13 years ago
- Category set to RTE (rtehtmlarea + ckeditor)
Updated by Stanislas Rolland almost 13 years ago
- Status changed from New to Needs Feedback
- Assignee set to Stanislas Rolland
- Target version deleted (
1264)
Is this still an issue?
I am not able to reproduce this issue using IE7 with TYPO3 4.4.9.
Updated by Stanislas Rolland almost 13 years ago
Please explain how to reproduce.
Clear the RTE cache using the BE Clear cache menu.
Perhaps something is wrong with your installation.
I have no problem changing the block format in IE7 with TYPO3 4.4.10.
Updated by Stanislas Rolland almost 13 years ago
Stefan Neufeind wrote:
Please adjust the function getTarget() in your ext-all.js from:
return g?Ext.fly(this.target).findParent(g,h,e):(e?Ext.get(this.target):this.target)
to read:
var target=(this.target||window.event.srcElement);return g?Ext.fly(target).findParent(g,h,e):(e?Ext.get(target):target)
The problem is that IE7 doesn't have the target but uses srcElement instead and doesn't populate it below this but attaches the event to the window. This works fine for me in 4.5.3 when working with workspaces. Would appreciate feedback if that helps your issue on 4.4.x as well.
I think this not a real issue, at least not in ExtJS.
The target (this.target) is previously and correctly set using Ext.lib.Event.getTarget(e).
Updated by Stanislas Rolland almost 13 years ago
No feedback. Unable to reproduce. Closing the issue.
Updated by Stanislas Rolland almost 13 years ago
- Status changed from Needs Feedback to Closed