Skip to main content

Bug Tracker

Side navigation

#11719 closed enhancement (fixed)

Opened May 07, 2012 03:01PM UTC

Closed May 21, 2012 03:18AM UTC

Deprecate .bind("ready") event

Reported by: dmethvin Owned by: dmethvin
Priority: low Milestone: 1.8
Component: event Version: 1.7.2
Keywords: Cc:
Blocked by: Blocking:

The "ready" **event** is error prone because users may attach an event handler after it has fired. It is much more natural for ready semantics to follow the Promise model; if handlers are added after the document is ready then they will fire. We're adding a ready Promise in 1.8 (see #11470) and of course the standard $(fn) or $().ready(fn) continue to work without change.

Let's deprecate the ready **event** as of 1.8; there is no hurry to remove it, but let's help users avoid dumb errors caused by dumb APIs.

Attachments (0)
Change History (2)

Changed May 07, 2012 03:04PM UTC by dmethvin comment:1

component: unfiledevent
milestone: None1.8
owner: → dmethvin
priority: undecidedlow
status: newassigned

Just to be absolutely clear what is being deprecated here, it is these forms:

$(document).bind("ready", fn);
$(document).on("ready", fn);

Where "ready" is a custom event name that is only fired **once** by jQuery when the document becomes ready.

Changed May 21, 2012 03:18AM UTC by dmethvin comment:2

resolution: → fixed
status: assignedclosed

Documentation updated.