Нет, это невозможно. Обновление: теперь возможно через API истории HTML5 - см. ответ Разбакова .
Надеюсь, вы понимаете, что пытаетесь решить чрезвычайно сложную проблему.
Допустим, ваш URL выглядит как
http://example.com/mypage/
Если вы измените расположение окна программно на
http://example/mypage/1/
Браузер вступит во владение и попытается перейти на эту страницу, там идет ваш причудливый код ajax!
Так в чем же альтернатива? Вы используете URL-фрагмент.
Допустим, у вас есть такой URL,
http://example.com/anotherpage/#section
Браузер сначала загрузит http://example.com/anotherpage/ и попытается найти якорь с именем 'section' и прокрутить до этого места. Это поведение используется плагином «Адреса». Это похоже на работу этих ссылок «Прокрутка вверх».
Так что, если вы находитесь на странице
http://example.com/mypage/
и измените URL на
http://example.com/mypage/#1
Браузер не будет загружать новую страницу, но попытаться найти привязку с именем '1' и прокрутить до этой привязки.
Даже если вам удалось добавить фрагменты в URL, это не значит, что работа выполнена. Если пользователь нажимает кнопку «Назад», DOM будет сброшен, и вам придется проанализировать эти фрагменты и воссоздать DOM. Это определенно нетривиально.