Javascript-форум (https://javascript.ru/forum/)
-   Events/DOM/Window (https://javascript.ru/forum/events/)
-   -   beforeOpen для своего модуля (https://javascript.ru/forum/events/61926-beforeopen-dlya-svoego-modulya.html)

werty1001 16.03.2016 02:04

beforeOpen для своего модуля
 
Привет, разумно делать расширение своего модуля такого вида:
<a data-show="sign" class="open">open modal</a>

<div data-id="sign">modal</div>


Модуль будет подключаться в отдельном внешнем файле:
var mymodule = (function() {

'use strict';

	document.querySelector('.open').addEventListener('click', function() {
		var id = this.dataset.show;

			// если есть колбек, то вызываем
			if (mymodule.cb[id]) { mymodule.cb[id](); }

	}, false);

	data = {

		cb: {},

		beforeOpen: function(id, cb) {
			// записываем колбек
			this.cb[id] = cb;
		}

	};

return data;

})();


Нужно, чтобы для гибкости были доп. евенты, например beforeOpen :
mymodule.beforeOpen('sign', function() {
	alert('beforeOpen');
});

Это нормальное решение или костыль? Наверно, можно изящнее?
Заранее, спасибо за ответы.


Часовой пояс GMT +3, время: 08:18.