Dynamically created .live() events appear to be bound but not firing

Dynamically created .live() events appear to be bound but not firing

I've come across an issue where I've got a dynamically created popup class that despite appearing to be bound according to Visual Event does not fire on clicking the closebutton attached to it.  I'm not getting any errors in firebug and by setting breakpoints I've verified we are not reaching the code to execute.  Ruling out the usual suspects such as obvious spelling mistakes/ swapping out jquery versions 1.3/1.4/1.5 doesn't make any difference.  Any ideas on what could be going on or where else I can look?

Here is the original function:

$this.find(".close").live('click', function() {
                        var $this = $(this);
                        $this.parents("." + sets.popupClass).remove();
                        setTimeout(function() {
                            sets.onPopupClose.call(this)
                        }, 100);
                        return false
                    });

And here is what it is actually bound to at runtime:
function () {
var $this = $(this);
$this.parents("." + sets.popupClass).remove();
setTimeout(function () {sets.onPopupClose.call(this);}, 100);
return false;
}