Показать сообщение отдельно
  #3 (permalink)  
Старый 20.08.2015, 15:46
Аватар для Lemme
Профессор
Отправить личное сообщение для Lemme Посмотреть профиль Найти все сообщения от Lemme
 
Регистрация: 15.07.2015
Сообщений: 511

<div class="parent1">
    <div class="container">
        <div class="controller">Ctrl #1</div>
    </div>
</div>

<div class="parent2">
    <div class="container">
        <div class="controller">Ctrl #2</div>
    </div>
</div>

var foo = (function () {

	var _parentC;
	var _container = document.querySelector(_parentC + ' .container');
	var _controller = document.querySelector(_parentC + ' .controller');

	var _bar = function () {
		alert(_controller.innerHTML);
	}

	return {
		init: function (parentC) {
			_parentC = parentC;
            _bar();
		}
	}
})();

foo.init('.parent1');
foo.init('.parent2');


Я понимаю, что можно сделать так:

var foo = (function () {

	var _container, _controller;

	var _setElements = function (parentC) {
		_container = document.querySelector(parentC + ' .container');
		_controller = document.querySelector(parentC + ' .controller');
	}

	var _bar = function () {
		alert(_controller.innerHTML);
	}

	return {
		init: function (parentC) {
			_setElements(parentC);
			_bar();
		}
	}
})();

foo.init('.parent1');
foo.init('.parent2');


Но может есть еще варианты?

Последний раз редактировалось Lemme, 20.08.2015 в 15:59.
Ответить с цитированием