What's a better method for triggering a load() event on cached images?
Asked Answered
D

2

6

I'm working on a script that waits for content to load in a hidden div before activating a thumbnail that points to it.

$('#preload img:first-child')
.bind('load',activateThumb)
.each(function(){
    if(this.complete || this.complete===undefined) $(this).load()});

The each part triggers the load() event for images in the cache. I had to add it in order to make the page work in some browsers that don't fire load() on cached images.

There is also a plugin here that does the same thing essentially, by triggering the load event not "manually" but by resetting the src attribute.

From a programming standpoint, which is the more graceful solution?

Daglock answered 24/8, 2010 at 7:9 Comment(0)
T
2

Resetting the src attribute to fire the load handler seems like a bit of a hack (based on my knowledge). Unless the author of the plugin has some special reason to do that, or knows something we don't, I would stick with your method of manually triggering load.

Tisbee answered 24/8, 2010 at 7:16 Comment(0)
E
2

The plugin event.special.load, which is mentioned in the jquery load-event documentation, solves that in a similar way.

Exteroceptor answered 13/10, 2010 at 10:42 Comment(0)

© 2022 - 2024 — McMap. All rights reserved.