We've got our JS unit tests running in Jenkins via a Maven plugin (jasmine-maven-plugin). IMO Maven can be a pain to set up but the end result is less janky than custom shell scripts. Actually I think the same could be said for Jenkins itself. :)
The true value (something I'm working on at the moment) is integrating this with Sauce (https://saucelabs.com/) to run in multiple browsers continuously.
BrowserStack (another browser-in-the-cloud provider) has an API [0] which would make this task quite easy. Just add another build step with a script that POST to /browser that contains the URL of the Buster server.
(They also have tunneling support.)
http://mikekusold.com/blog/Development/2012-06-05/deploying-...