topogigiovanni
11/13/2018 - 10:33 PM

Protect jQuery overwrite

Protege contra a sobrescrita do jQuery

(function(window, jQuery, undefined) {
  
  if(typeof Object === 'undefined' || !Object.defineProperty) {
    return false;
  }
  
  var CoreJQuery = jQuery;

  var propDefinition = {
    get: function() {
      return CoreJQuery;
    },
    set: function() {
      return false;
    }
  };
  
  try {
    ['jQuery', '$'].forEach(function(alias) {
      Object.defineProperty(window, alias, propDefinition);
    });
  } catch(e) {
    console.error(e);
  }
  

})(window, jQuery);