1) jQuery requests for scripts via AJAX are never cached unless you specify that as an option in the $.ajax() function. From the documentation:
"cache, Boolean
Default: true, false for dataType 'script' and 'jsonp'
If set to false it will force the pages that you request to not be cached by the browser."
2) I think I need to see sample code to grasp this part of the question.
3) You can't do anything if $.getScript() fails. But, you should be aware that $.getScript() is just a short-hand version of $.ajax(), equivilant to:
$.ajax({
url: url,
dataType: 'script',
success: function(data) {
//
}
});
This means that you can implement the error
callback, to do something clever if the file fails to load, ie:
$.ajax({
url: url,
dataType: 'script',
success: function(data) {
//
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
alert("panic");
}
});