Hi You-young,
Sorry for the delayed reply.
Is the "second page for chatting" opened from the first one (list of users) ? In this case the chatting page should be able to access the first page through window.opener, and the popup could use window.opener.client after the first page sets it as window.client = new jabberwerx.Client(<resource>).
https://developer.mozilla.org/en-US/docs/DOM/window.openerDoes your application target any particular browser ? If HTML5 is supported, you could use a web worker to load jabberwerx and initialize the client variable in the background (worker script), and the 2 pages would exchange message with the web worker, assuming they are both loaded from the same domain.
https://developer.mozilla.org/en-US/docs/DOM/Using_web_workersFinally, if your application is meant to run in Firefox or Chrome only, you could use a browser extension to share a background (invisible) page between as many pages/tabs as needed.
Note I have not tested any of the suggested solutions ;-)
Thomas