Skip to main content

Bug Tracker

Side navigation

#11820 closed bug (cantfix)

Opened May 26, 2012 01:08AM UTC

Closed May 26, 2012 01:18AM UTC

Event error does not attach to future elements with .on();

Reported by: dicetrash@gmail.com Owned by:
Priority: undecided Milestone: None
Component: unfiled Version: 1.7.2
Keywords: Cc:
Blocked by: Blocking:
Description

The using the on() method does not properly bind future elements when firing the "error" event type

//checked against recent and git repository

<html>
<head>
<script type="text/javascript" src="http://code.jquery.com/jquery-git.js" ></script>
<script type="text/javascript">
$(document).ready(function() {
$('body').on('error', 'img', function(err_event) {
    //this will never fire but i feel as though it should
    console.log('wont fire anyway'); //errors do not bubble
});
$('body').on('click', 'img', function(ev) {
   //clicks bubble correctly and bind to future elements
  console.log($(this));
});
$('img').on('error', function(err_event) {
  //does not bind to future elements
  //but is called once for pre-created element
  console.log(['old element', this]);
});
$('body').append('<img src="image.gif" />');
});

</script>
</head>
<body>
<!-- element src will fail triggering error event -->
<!-- error will be caught by $(img).on('error'); -->
<img src="image.gif" width="100px" />
</body>
</html>
Attachments (0)
Change History (2)

Changed May 26, 2012 01:16AM UTC by anonymous comment:1

Sorry did not read paste guide before posting

http://jsfiddle.net/7cnGd/

Changed May 26, 2012 01:18AM UTC by dmethvin comment:2

resolution: → cantfix
status: newclosed

Error events on images don't bubble. There is no good way to fake this one either.

http://www.w3.org/TR/DOM-Level-3-Events/#event-type-error

I've updated the documentation for the .on() method to clarify this.