Come altri hanno già detto, non esiste un modo semplice. Ecco un codice che ho usato in passato per rilevare se è presente una barra di scorrimento.
// Used like $('#my-id').hasScrollbar();
jQuery.fn.hasScrollbar = function() {
var scrollHeight = this.get(0).scrollHeight;
//safari's scrollHeight includes padding
if ($.browser.safari)
scrollHeight -= parseInt(this.css('padding-top')) + parseInt(this.css('padding-bottom'));
if (this.height() < scrollHeight)
return true;
else
return false;
}
avrete bisogno manualmente di chiamare questo dopo l'aggiunta o la rimozione di contenuti da div e probabilmente funzionerà solo se lo si chiama su elementi visibili, ma è meglio che partire da zero.
Non esiste evento. – vooD
Dai un'occhiata alla soluzione di OrganicPanda su questo altro thread: [http://stackoverflow.com/questions/2175992/detect-when-window-vertical-scrollbar-appears](http://stackoverflow.com/questions/2175992/ viene visualizzato detect-when-window-vertical-scrollbar) –
Possibile duplicato di [Rileva quando viene visualizzata la barra di scorrimento verticale della finestra] (http://stackoverflow.com/questions/2175992/detect-when-window-vertical-scrollbar-appears) – user