Смена языка на сайте?
1. Определяем язык:var language = window.navigator.userLanguage || window.navigator.language;
2. Грузим динамически нужный js, содержащий ассоциативный массив строковых констант для текущего языка. Используем для простоты: www.javascriptkit.com/javatutors/loadjavascriptcss...
3. Используем элементы массива на странице.
UPD: 4. Можно сделать замену строк DOM-контейнера через функцию с использованием Regex-шаблона, чтобы не использовать элементы шаблона в исходном "теле" страницы, а сохранить обычные текстовые строки "домашнего" языка.
Ну тут есть несколько тонкостей. В общем случае вам нужен шаблон разметки, где текстовые зоны будут помечены некими переменными, а при отрисовке страницы клиенту эти переменные заменяются из неких ресурсов нужным текстом. На разных платформах это реализуется по разному - уточните ваш стэк технологий и возможно совет будет более конкретным. Касательно тонкостей.
 1) Разные языки имеют разную среднюю длинну слов, в связи с чем верстка текстового контейнера может стать весьма занятным процессом. 
2)  Существуют языки, имеющие другое направление письма, в сравнении с Русским. Это требует серьезных доработок шаблона, вплоть до второго шаблона под подобные языки.
3) Помимо самих слов - в разных регионах мира по разному отображаются финансы, даты и некоторые другие несловесные данные. К примеру десятичная запятая в цифрах, разделители даты, 07/08/09 - Скажете какую дату имею в виду? 
Надеюсь коллеги дополнят список тонкостей своим личным опытом.