Search and Top Navigation
#8443 closed bug (fixed)
Opened July 14, 2012 02:59PM UTC
Closed October 01, 2013 06:22AM UTC
Last modified May 13, 2014 03:20PM UTC
Dialog: "unspecified error" when using ie9 and iframe
Reported by: | mr-x-123 | Owned by: | mr-x-123 |
---|---|---|---|
Priority: | minor | Milestone: | 1.10.4 |
Component: | ui.dialog | Version: | 1.8.21 |
Keywords: | Cc: | ||
Blocked by: | Blocking: |
Description
hi folks,
i'm sorry i'm in a hurry and writing a bad ticket.
in fact i considered not writing a ticket at all, but it maybe it will help.
to my humble knowledge the effects module is USELESS as-is in ie9 with a iframed page.
problem is:
ie9.0.8112.16421 64bit (not ie8, not ie7, not ff, not chromium) gives "unspecified error" when calling
active = document.activeElement;
in line 4716 or so. this is most likely a ie9 bug.
you can read more at http://stackoverflow.com/questions/7904417/jquery-ui-creates-unspecified-error-when-loading-iframe-in-ie9 or just google.
you will find if you are interested.
i "fixed" it by writing
try { active = document.activeElement; } catch( e ) { active = document.body; }
around this and the other occourence of document.activeElement;
please excuse if i can't provide additional information
Attachments (0)
Change History (19)
Changed July 16, 2012 02:17PM UTC by comment:1
owner: | → mr-x-123 |
---|---|
status: | new → pending |
Changed July 31, 2012 08:48AM UTC by comment:2
resolution: | → invalid |
---|---|
status: | pending → closed |
Because we get so many tickets, we often need to return them to the initial reporter for more information. If that person does not reply within 14 days, the ticket will automatically be closed, and that has happened in this case. If you still are interested in pursuing this issue, feel free to add a comment with the requested information and we will be happy to reopen the ticket if it is still valid. Thanks!
Changed February 04, 2013 02:51AM UTC by comment:3
I believe this is an issue in jquery core.
I have created ticket 13378 (http://bugs.jquery.com/ticket/13378) to track it there.
Changed April 27, 2013 02:58AM UTC by comment:5
component: | ui.effects.core → ui.dialog |
---|---|
milestone: | 1.9.0 → none |
resolution: | notabug |
status: | closed → reopened |
summary: | "unspecified error" when using ie9 and IFRAME → Dialog: "unspecified error" when using ie9 and iframe |
The error occurs on this line in open:
this.opener = $( this.document[0].activeElement );
Per the discussion in the core ticket the error occurs on access to
activeElement, therefore I believe our only recourse here it to wrap that line with a try/catch.
I verified that this problem does not occur in IE10.
Changed May 24, 2013 09:21PM UTC by comment:6
Here's an approach that core took to deal with this problem: https://github.com/jquery/jquery/commit/85fc5878b3c6af73f42d61eedf73013e7faae408.
Changed September 30, 2013 09:18AM UTC by comment:8
We implemented a workaround for this issue for draggable: https://github.com/jquery/jquery-ui/commit/eae2c4b358af3ebfae258abfe77eeace48fcefcb
We can probably apply the same solution here.
Changed September 30, 2013 12:46PM UTC by comment:9
That commit also addresses the issue in #9420, which isn't a duplicate, but these two should be solved in one commit.
Changed September 30, 2013 02:52PM UTC by comment:10
Replying to [comment:9 joern.zaefferer]:
That commit also addresses the issue in #9420, which isn't a duplicate, but these two should be solved in one commit.
Changed October 01, 2013 06:22AM UTC by comment:11
Changed October 01, 2013 06:23AM UTC by comment:12
milestone: | none → 1.11.0 |
---|
Changed November 12, 2013 11:50AM UTC by comment:13
Is it possible to apply this fix to the 1.8, 1.9 and 1.10 versions, too? I'm using the 1.8 version, and this issue is nagging me for a long time.
Changed November 12, 2013 11:52AM UTC by comment:14
If there is a 1.10.4 release, this will almost certainly be included. If there is a 1.9.3 release, this might be included. There will definitely not be a 1.8.25 release.
Changed November 26, 2013 08:12PM UTC by comment:15
Changed November 26, 2013 08:44PM UTC by comment:16
milestone: | 1.11.0 → 1.10.4 |
---|
Changed February 12, 2014 04:00PM UTC by comment:17
Hi,
I came across this ticket when I was experiencing the same issue with IE 7 and IE 8 when a page was displaying a dialog widget when the page first loads. The page is being displayed in an iframe.
jquery-ui-1.10.4.custom.js
After debugging the issue I found the block of code that is causing the issue to be:
open: function() {
var that = this;
if ( this._isOpen ) {
if ( this._moveToTop() ) {
this._focusTabbable();
}
return;
}
this._isOpen = true;
this.opener = $( this.document[0].activeElement );
this._size();
this._position();
this._createOverlay();
this._moveToTop( null, true );
this._show( this.uiDialog, this.options.show, function() {
that._focusTabbable();
that._trigger("focus");
});
this._trigger("open");
},
My guess here is that the following line needs the same modification that was done to fix the original posters issue:
this.opener = $( this.document[0].activeElement );
Please let me know when this will be resolved. I am going to try the workout the poster suggested, but I want to be sure that this won't cause me issues if we upgrade to any new versions of jQuery UI that will be released.
Changed February 12, 2014 08:44PM UTC by comment:18
Replying to [comment:17 dmazz55]:
Hi, I came across this ticket when I was experiencing the same issue with IE 7 and IE 8 when a page was displaying a dialog widget when the page first loads. The page is being displayed in an iframe. jquery-ui-1.10.4.custom.js After debugging the issue I found the block of code that is causing the issue to be: open: function() { var that = this; if ( this._isOpen ) { if ( this._moveToTop() ) { this._focusTabbable(); } return; } this._isOpen = true; this.opener = $( this.document[0].activeElement ); this._size(); this._position(); this._createOverlay(); this._moveToTop( null, true ); this._show( this.uiDialog, this.options.show, function() { that._focusTabbable(); that._trigger("focus"); }); this._trigger("open"); }, My guess here is that the following line needs the same modification that was done to fix the original posters issue: this.opener = $( this.document[0].activeElement ); Please let me know when this will be resolved. I am going to try the workout the poster suggested, but I want to be sure that this won't cause me issues if we upgrade to any new versions of jQuery UI that will be released.
We need a reduced test case that shows how you're encountering this issue. I'm curious why we haven't noticed this before.
Changed May 13, 2014 03:20PM UTC by comment:19
Hi,
I've updated my install to jqueryui version 1.10.4.
However, I'm having the same problem (en ie9, inside an iframe) in the dialog "dialog.open" method
As far as I see, the correction was only for the "dialog.close" method.
Problem still happens in line 232.
https://github.com/jquery/jquery-ui/blob/1-10-stable/ui/jquery.ui.dialog.js#L232
Sorry, but I can't post a "minimum example" right now.
Please provide a reduced test case showing the problem. I just did a quick test with animated dialogs and it worked fine.