Opened 16 years ago
Closed 15 years ago
#1807 closed bug (wontfix)
jQuery(undefined) returns document
Reported by: | gyphie | Owned by: | aflesler |
---|---|---|---|
Priority: | major | Milestone: | 1.2.2 |
Component: | core | Version: | 1.2.1 |
Keywords: | Cc: | ||
Blocked by: | Blocking: |
Description
When calling jQuery() or $() with an undefined value parameter document is returned instead of an empty set.
var undefined_something; jQuery(undefined_something).click(function() { alert("You clicked me!");});
The above sample results in an onclick event bound to document. Any click anywhere displays an alert box.
Expected behavior is that an empty set is returned and .click does not bind any events.
I've attached a patch to jQuery-1.2.1.js that corrects the issue while still allowing jQuery() to return document.
(p.s. This is my first bug report, pardon me if I selected the wrong options from the drop down boxes)
Attachments (1)
Change History (7)
Changed 16 years ago by
Attachment: | jQuery.patch.txt added |
---|
comment:1 Changed 16 years ago by
Owner: | set to davidserduke |
---|---|
Status: | new → assigned |
While I see your point and tend to agree with you, historically both jQuery() and jQuery(undefined) have returned the document object so arguable that is the expected behavior at this point. So I'd probably close this bug on the basis that it isn't worth the fix which could have significant effects.
I'll see if I can get another opinion first though.
comment:2 Changed 16 years ago by
I'm leaning towards fixing this but we might need to wait until another bump in the minor version.
comment:3 Changed 16 years ago by
Owner: | davidserduke deleted |
---|---|
Status: | assigned → new |
comment:4 Changed 15 years ago by
Owner: | set to aflesler |
---|
I would like to see this fixed, but as a workaround I have been using this:
[]) |
Which gives an empty jQuery object.
comment:6 Changed 15 years ago by
Resolution: | → wontfix |
---|---|
Status: | new → closed |
This is the current expected behavior.
Unified diff for patching the bug.