Variável Javascript para largura da página

Às vezes, especialmente com jQuery, você deseja que certas ações sejam executadas apenas quando a largura da página estiver acima ou abaixo de algum ponto de interrupção (isso é especialmente útil com o advento do RWD). Uma boa maneira de fazer isso é definir uma variável de largura de página, como esta (isso é tudo jQuery, a propósito):

pageWidth = $(window).width();

Isso é bom e bom – se você não estiver alterando o tamanho do navegador. No entanto, isso só é definido quando uma página é carregada. Depois que a largura da página muda, no entanto, ela não é mais precisa. Um conjunto melhor a ser tomado seria este:

pageWidth = $(window).width();
$
(window).resize(function(){
pageWidth
= $(window).width();
});

Isso diz à variável para ser constantemente redefinida para a largura atual da página, sempre que a largura for alterada, bem como obter a largura atual quando a página carregar.

No entanto, um problema permanece – essa variável fica presa na função. Portanto, a melhor e completa versão seria algo assim:

var thePage = {};
thePage
.width = $(window).width();
$
(window).resize(function(){
thePage
.width = $(window).width();
});

Isso cria um objeto chamado thePagee, em seguida, as duas funções definem a propriedade widthpara a largura da página. Agora, você sempre pode se referir a thePage.widthoutra função e nunca terá que se preocupar com problemas com a configuração da variável global.