Добрый день. Начал писать скрипт интерактивной навигации по карте в виде игры. Но в один момент решил, что я делаю что-то не так...
Вот думаю, может его лучше использовать как плагин для jQuery? Или для данной задачи в этом нет необходимости.
Суть в том, что у меня есть база в формате json
Она содержит объекты комнат, 
Каждая комната содержит объекты со своими координатами, на которые вешаются события.
Я сделал просто скриптом с использованием jQuery. Но внутренне что-то подсказывает, что лучше его плагином сделать... Т.к. он даже в 150 строк становится не совсем очевидным в некоторых местах...
В общем вопрос.
Как "правильно" генерировать дочерние объекты к сгенерированному объекту и подвешивать на них события?
Т.е. допустим я генерирую
var $room = $('<div></div>');
а дочерние так?
objects.each(function(){
  var $obj = $('<div></div>');
  $obj.addClass('obj');
  $obj.on('çlick', function() {
    goToRoom(параметры для перехода в другую комнату);
  });
  $room.append($obj);
});
Или как лучше?
в итоге что-то типа (в упращённой версии)
(function($) {
  $.fn.myMap = function(options) {
    function goToRoom() { смена комнаты };
    function createRoom(id) {
      var room = db.room[id];
      var $room = $('<div></div>');
      room.objects.each(function(){
        var $obj = $('<div></div>');
        $obj.addClass('obj');
        $obj.on('çlick', function() {
          goToRoom(параметры для перехода в другую комнату);
        });
        $room.append($obj);      
      };
    return this.each(createRoom(options.startRoom));
  };
})(jQuery);
будет ли такой вариант "правильным"?