I have been using Jasmine framework for the testing and JSTestDriver. I had also set up both Hudson and TeamCity for CI as part of evaluation, though eventually settled on TeamCity.
Jasmine is a very nice BDD framework, which also provides mocking and stubbing functionality.
JSTestDriver server allows any browser to attach to it, whether local, or remote, as Vojta has already pointed out. I have been able to connect browsers from Windows and MAC machines for example, and also iPhone ... it is quite possible to connect other mobile browsers, if mobile development tickles your fancy. JSTestDriver will produce JUnit XML results files that either Hudson or TeamCity will be able to parse and report upon.
As Vojta also pointed out, an Eclipse plugin is available for JSTestDriver. I have recently moved over to WebStorm 1.0 and now 2.0 (IDE from JetBrains), and a plugin exists for this IDE as well, albeit somewhat buggy. WebStorm is excellent, btw, as far as JavaScript development is concerned.
We are also writing server-side JS code, and Jasmine has worked fine here as well.
I have installed and configured JsTestDriver/TeamCity on the Amazon cloud and I am able to run Jasmine tests headlessly, for example.
In short, between the 3 solutions (Jasmine, JSTestDriver, and TeamCity), tons of plugins/adapters/recipes exist that allow any number of setups or configurations. That is not to say other combinations will not work ... simply, for me, this combinations has proven itself thus far.