Side navigation
#7524 closed bug (fixed)
Opened November 15, 2010 05:22PM UTC
Closed December 06, 2010 10:24PM UTC
Calling $.fn.data without arguments on a non-DOMelement in 1.4.4
Reported by: | timmolendijk | Owned by: | snover |
---|---|---|---|
Priority: | blocker | Milestone: | 1.5 |
Component: | data | Version: | 1.4.4 |
Keywords: | regression | Cc: | |
Blocked by: | Blocking: |
Description
Try the following code in 1.4.3 and then in 1.4.4:
$({tim: 28}).data()
In 1.4.3 the expected data object is returned, in 1.4.4 a TypeError in thrown: "Cannot read property 'length' of undefined"
The problem is in line 1250, in which it is assumed that the data object has an "attributes" property (which is obviously a valid assumption for DOM nodes with nodeType 1 but not for many other object types).
Attachments (0)
Change History (10)
Changed November 15, 2010 06:36PM UTC by comment:1
_comment0: | Here's a simple jsFiddle for this use case. → 1289846211031375 |
---|
Changed November 15, 2010 07:28PM UTC by comment:2
resolution: | → duplicate |
---|---|
status: | new → closed |
Confirmed
Changed November 15, 2010 07:31PM UTC by comment:3
component: | unfiled → data |
---|---|
priority: | undecided → low |
resolution: | duplicate |
status: | closed → reopened |
Changed November 15, 2010 07:31PM UTC by comment:4
milestone: | 1.5 → 1.4.5 |
---|
Changed November 16, 2010 01:34AM UTC by comment:5
_comment0: | Calling $.fn.data on a plain JS object will just return the JS object. Is there actually a use case here? → 1289871318715733 |
---|
Calling $.fn.data on a plain JS object with no argument will just return the JS object. Is there actually a use case here?
Changed November 16, 2010 12:43PM UTC by comment:6
Use case; sometimes it's a custom (not necessarily plain) JS object, sometimes it's a DOM element. That's where the $.data API shines, as you can just treat them all the same. This bug messes up this unity.
Changed November 22, 2010 06:24AM UTC by comment:7
keywords: | → regression |
---|---|
priority: | low → blocker |
status: | reopened → open |
I wish, I wish, I wish this wasn’t a regression.
Changed December 03, 2010 08:23AM UTC by comment:8
owner: | → snover |
---|---|
status: | open → assigned |
Changed December 06, 2010 10:24PM UTC by comment:9
resolution: | → fixed |
---|---|
status: | assigned → closed |
Landed.
Changed January 14, 2011 10:20PM UTC by comment:10
milestone: | 1.4.5 → 1.5 |
---|
Move fixed tickets to appropriate milestone
Here's a simple jsFiddle for this use case http://jsfiddle.net/boushley/CCdtM/.