Способ, который вы описали, звучит как хороший способ реализовать это да. Я не знаю, есть ли разные подходы. Я реализовал нечто похожее на предыдущем сайте (www.ponyhof.be), хотя нет возможности его применения. Вы можете взглянуть на код, это не совсем красиво, но работает.
На этом сайте я создал одну главную страницу с пустой информационной панелью (перетаскиваемой), куда я загружал информацию через Ajax.
С тех пор, как я сделал этот сайт, я узнал некоторые вещи, которые облегчили бы реализацию (так что теперь я сделал бы это по-другому). Более конкретно, я бы лучше использовал делегат-метод jQuery, который может автоматически прикреплять действия к ссылкам, загружаемым через ajax (на ponyhof.be я прикреплял их после запуска события ajaxComplete).
Но в целом я думаю, что то, что вы предлагаете, звучит как хороший способ создания такого интерфейса, и я не нашел ничего лучшего.