Search and Top Navigation
#3487 closed bug (notabug)
Opened October 21, 2008 10:23AM UTC
Closed October 24, 2008 12:36AM UTC
Last modified October 11, 2012 09:15PM UTC
ui.resizable does not work correctly in pages within framesets
Reported by: | qswitch | Owned by: | eduardo |
---|---|---|---|
Priority: | blocker | Milestone: | |
Component: | ui.resizable | Version: | 1.6rc2 |
Keywords: | resizabletextarea frameset | Cc: | |
Blocked by: | Blocking: |
Description
A textarea cannot be made resizable as expected when its
page is part of a frameset and the jQuery-based JS code is run from
within
a different page contained in the same frameset.
Any known way of addressing the textarea outside of the current page fails in so far as it leads to the same unexpected behavior.
Behavior observed in IE7: No reaction of the addressed textarea at all,not even cursor change.
Behavior observed in FF3.0.3, Opera 9.60, Safari 3.1.2: Cursor changes to "resizing" when mouse is over the actual textarea
(within its very page).
Textarea will resize only if mouse is moved anywhere (!) within the page containing the JS code,
which in fact is the other page of the frameset. As it seems, jQuery does not handle addressing of frame objects correctly.
Most probably even other functions apart from resizable are affected.
frameset:
<?xml version="1.0" encoding="utf-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" lang="de"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <meta http-equiv="Content-Script-Type" content="text/javascript" /> </head> <frameset cols="290,*"> <frame name="leftFrame" src="frame_left.html" /> <frame name="rightFrame" src="frame_right.html" /> </frameset> </html>
first frame (frame_left.html):
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Script-Type" content="text/javascript"> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <title>Test</title> <script type="text/javascript" src="jquery-1.2.6.js"></script> <script type="text/javascript" src="ui.core.js"></script> <script type="text/javascript" src="ui.resizable.js"></script> <script type="text/javascript"> $(document).ready(function() { $("#resizebleTextarea",parent.frames[1].document.body).resizable({handles: "all"}); }); </script> </head> <body> </body> </html>
second frame (frame_right.html):
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="de"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <meta http-equiv="Content-Script-Type" content="text/javascript" /> </head> <body> <textarea id="resizebleTextarea"></textarea> </body> </html>
As you've said, this is a problem with jQuery core, not jQuery UI. Feel free to create a ticket in core's bug tracker to have the underlying problem fixed.