Большинство современных браузеров поддерживают localStorage.
var isLocalStorage = ('localStorage' in window)
  , mode = (isLocalStorage && localStorage.mode) || 'compact'; //загрузили из LS или поставили дефолтное значение
//какой-то код
//когда меняем mode, записываем его в LS
mode = 'detail';
if (isLocalStorage) {
  localStorage.mode = mode;
}
Лучше вынести в функцию: 
var mode = ... , isLocalStorage = ... ;
function setMode(modeValue) {
  mode = modeValue;
  if (isLocalStorage) {
    localStorage.mode = modeValue;
  }
}
...
setMode('compact');