Drupal - Listen to AJAX complete event from a behavior

Yes, there is :

Drupal.behaviors.YourBehaviour = {
attach: function(context, settings) {  
  $('#yourform').ajaxComplete(function(event, xhr, settings) {
    if ($(event.target.id) == 'the-id-of-your-item') {
      // Your code here
    }
  });
 }
}

For versions of jQuery 1.8+, it seems you now must attach the .ajaxComplete function to the document, not the form or the view itself (see http://api.jquery.com/ajaxcomplete/)

The following worked for me on D7 with Jquery 1.10 and Views 7.x-3.8, where "your_view_id" is the machine name of the view set in the view's "Other" settings panel. There is a lot of other info in event, xhr and settings to key off of to determine if the ajax result is for the view you want, but this worked for my situation:

jQuery(document).ajaxComplete(function(event, xhr, settings) {
    if(typeof settings.extraData != 'undefined' && typeof settings.extraData.view_display_id != 'undefined') {

        switch(settings.extraData.view_display_id){

            case "your_view_id":

                console.log('your_view_id ajax results!');

                break;

            default:

                console.log('some other ajax result...');

                break;

        }
    }

});

None of the given solutions worked for me with Drupal 7.24, jQuery 1.11 and Views 7.x-3.8.

What user1193694 suggested was not bad, but the settings object that I received didn't have the extraData parameter.

When parsing the settings object i saw that the settings.data propertiy contains 'view_name=' and your view's machine name, so thats what i am filtering for:

jQuery(document).ajaxComplete(function(event, xhr, settings) {

    // see if it is from our view
    if (settings.data.indexOf( "view_name=your_views_name") != -1) {

            console.log('your_view_id ajax results!');

    }
});

Replace 'your_views_name' with the machine name of your view.