Side navigation
#2104 closed bug (wontfix)
Opened January 02, 2008 04:06PM UTC
Closed January 14, 2008 07:08PM UTC
Last modified March 15, 2012 09:43AM UTC
find() does not recognize a passed DOM object instead of selector string
Reported by: | torben | Owned by: | |
---|---|---|---|
Priority: | major | Milestone: | 1.2.2 |
Component: | core | Version: | 1.2.1 |
Keywords: | Cc: | ||
Blocked by: | Blocking: |
Description
I put some effort in making interface.js v1.2 work with jQuery v1.2.x since a migration to jQ UI, unfortunately, is far from being straight forward.
A concrete problem arises from iSlider.js, which uses a .Draggable in the build() method. As 'handle' it uses 'this'. Later on, the jQ core function find() is called with 'this' in line:
var dhe = o.handle ? jQuery(this).find(o.handle) : jQuery(this);
The find() method does not return an appropriate result and execution fails with an error (at least in IE). This is because indexOf() does not work for a DOM object.
Anyway, find() needs to become more robust. I recommend trying to convert a non-string into a jQ object (see attached patch). One could argue if it is a problem of jQ or the caller (e.g. interface.js). However, I don't see a problem in falling back to a standard jQuery if the passed parameter is not a selector string.
Attachments (1)
Change History (1)
Changed January 14, 2008 07:08PM UTC by comment:1
resolution: | → wontfix |
---|---|
status: | new → closed |
I don't understand what .find() with a DOM element would do? It definitely seems like Interface should do a check to see if it's a DOM element, and use jQuery(o.handle).