The thing would be like that :
1. the user is in the normal channel
2. it clicks on the button to see whosonline in the chatbox
3. his request is managed through ajax and the refresh is disable
4. once the request has been managed by ajax, the whosonline is shown (1 query only when user clicks on the whosonline button to retrieve the list of online users)
So that's not a big one I think