Другим решением будет расширение функции getScript в jQuery согласно документации :
jQuery.cachedScript = function(url, options) {
options = $.extend(options || {}, {
dataType: "script",
cache: true,
url: url
});
return jQuery.ajax(options);
};
Таким образом, только вызовы ajax с использованием этого нового метода будут использовать кеш. С другой стороны, если вы используете метод ajaxSetup, все ваши вызовы ajax будут кэшироваться по умолчанию, так как ajaxSetup устанавливает свойство cache глобально.
Теперь вы можете использовать $.cachedScript(location.href);
вместо $.getScript(this.href);
.