Skip to main content

Bug Tracker

Side navigation

#14882 closed bug (fixed)

Opened March 13, 2014 01:38AM UTC

Closed March 17, 2014 05:13PM UTC

document.ready doesn't fire in iOS7 for jQuery loaded after window load event fires

Reported by: m_gol Owned by: m_gol
Priority: low Milestone: 1.11.1/2.1.1
Component: core Version: 2.1.0
Keywords: Cc:
Blocked by: Blocking:
Description

document.ready doesn't fire in iOS7 for jQuery loaded after window load event fires. This causes one test to fail, see e.g.: http://swarm.jquery.org/result/1680275

Attachments (0)
Change History (5)

Changed March 13, 2014 01:41AM UTC by m_gol comment:1

component: unfiledcore
milestone: None1.11.1/2.1.1
priority: undecidedlow

This test also *sometimes* fails on IE11 on TestSwarm. On iOS7, however, it fails all the time, on TestSwarm & locally and even if both timeouts (from dynamic_ready.html and dont_return.php) are bumped significantly.

Changed March 13, 2014 01:41AM UTC by m_gol comment:2

owner: → m_gol
status: newassigned

Changed March 13, 2014 02:17AM UTC by m_gol comment:3

_comment0: It seems that to trigger this bug one has to: \ 1) load jQuery asynchronously \ 2) execute some code in document ready of this new jQuery \ 3) do it all in an iframe \ \ Removing any condition from these (3) makes the bug disappear. \ \ This seems so improbable (and core/ready code so fragile & hard to test) that I'd prefer to just blacklist iOS7 for this specific test. \ \ I'll hold off until Monday meeting before commiting anything.1394677103519342
_comment1: It seems that to trigger this bug one has to: \ 1. load jQuery asynchronously \ 2. execute some code in document ready of this new jQuery \ 3. do it all in an iframe \ \ Removing any condition from these (3) makes the bug disappear. \ \ This seems so improbable (and core/ready code so fragile & hard to test) that I'd prefer to just blacklist iOS7 for this specific test. \ \ I'll hold off until Monday meeting before commiting anything.1394677115490001

It seems that to trigger this bug one has to:

1. load jQuery asynchronously

2. execute some code in document ready of this new jQuery

3. do it all in an iframe

Removing any condition from these 3 makes the bug disappear.

This seems so improbable (and core/ready code so fragile & hard to test) that I'd prefer to just blacklist iOS7 for this specific test.

I'll hold off until Monday meeting before commiting anything.

Changed March 17, 2014 04:38PM UTC by dmethvin comment:4

Let's just blacklist the test for now and wait for a real report of a problem.

Changed March 17, 2014 05:13PM UTC by Michał Gołębiowski comment:5

resolution: → fixed
status: assignedclosed

Core: Blacklist the ready test on async-loaded jQuery in iOS7

Fixes #14882

Changeset: 551578eb3676f67cccd8a91a582c2225bc970cac