Solo una precisazione:
Nello standard CSS2, esiste l'attributo
overflow
che puo` assumere i valori: visible hidden scroll auto
In particolare se settato su auto il browser puo` mostrare ambedue le barre se ne serve anche una sola, oppure puo` mostrare solo la barra necessaria.
Alcuni browser hanno implementato anche gli attributi
overflow-x
overflow-y
che naturalmente gestiscono le due barre in modo indipendente.
Comunque queste sono estensioni dei CSS, e non e` detto che funzionino
Quando si tratta di usarli in modo indipendente, io consiglio sempre di scrivere (nell'ordine):
overflow: auto;
overflow-x: ...;
overflow-y: ...;
in modo che se un browser capisce gli -x e -y utilizza quelli, altrimenti viene utilizzato l'attributo overflow.
Nel vostro caso in cui viene settato tramite JS, andrebbe quindi premesso ai due overflowX e overflowY anche l'istruzione per settare overflow.
Spero di aver individuato il problema.