nLL
nLL

Reputation: 5672

can jQuery replace default javascript alert or confirm?

Title doesn't actually reflect what I'm trying to explain. Is it possible to achieve below with jQuery

<a href="#" onclick="alert('test');">test</a>

when users clicks on test link jQuery takes control over default alert function and displays a jQuery modal window or something similar doesn't really matter.

Upvotes: 0

Views: 4812

Answers (3)

Q Studio
Q Studio

Reputation: 1831

Something like this might works ( based on the initial suggestion from @Quentin ):

// alert replacement ##
var alerter;
alert = function(foo) {

    //console.log(foo);
    if ( !jQuery('#alerter').length ) {
        jQuery("body").append( jQuery('<div>', { id: 'alerter'}) ); // make it ##
    }
    jQuery('#alerter').addClass('alerter').text(foo).slideDown("fast");
    clearTimeout(alerter);
    alerter = setTimeout(function(){
        jQuery('#alerter').slideUp("fast");
    }, 5000);
}

Upvotes: 0

rcravens
rcravens

Reputation: 8388

Here is an example where the default alert is never called. Instead the popup is displayed. Not certain if calling the default alert is requirement.

http://jsfiddle.net/pBsw6/

Hope this helps.

Bob

Upvotes: -1

Quentin
Quentin

Reputation: 943935

alert = function(foo) {
    // some functionality
};

Browser support may vary. It appears to work OK in Fx 4.0b7.

Upvotes: 3

Related Questions