Возможно, есть лучший способ сделать это, но в настоящее время у меня есть хорошо инкапсулированный объект JavaScript, который может иметь некоторые настраиваемые параметры. Я включаю кусок HTML-кода на страницу (через Dreamweaver 'snippets'), и при загрузке страницы мой JS-файл проходит через DOM и идентифицирует любой из этих фрагментов кода как конкретную функциональность, а затем запускает и настраивает эту функцию.
Все в порядке, пока я не захочу добавить более одного объекта на страницу, чтобы они были настраиваемыми. Важным моментом здесь является то, что вы можете добавить столько страниц этих объектов на страницу, сколько захотите с моей текущей настройкой - потому что они являются общими на тот момент и не имеют атрибута 'id'.
Теперь я хочу настроить эти объекты, поэтому я подумал: «Как насчет внешнего файла, содержащего параметры конфигурации, который эти объекты проверяют и применяют, если объект конфигурации найден». Это тоже хорошо работает, но данные конфигурации теперь немного «удалены». Я полагаю, что это будет раздражать других моих коллег в конечном итоге, это просто еще одна вещь, которую стоит запомнить.
Итак, на мой вопрос, я с удовольствием вставлю эти блоки кода, которые будут по-прежнему запускать самоинициализирующиеся объекты при загрузке страницы - но я хотел бы попробовать также вставить блок скрипта, который содержит параметры конфигурации. Мне нужно средство этого вставленного блока кода, зная, что его родительский элемент является контекстом для конфигурации.
Пример кода:
<div class="snippet">
<_contents of this 'snippet'_/>
<script type="text/javascript">
new Snippet().init({
rootElement: REFERENCE_TO_THIS_SCRIPT_TAGS_PARENT_NODE,
configOptionA: true,
configOptionB: false
});
</script>
</div>
Примечание: <div class="snippet">
специально не имеет атрибута 'id', потому что я хочу разрешить добавление более чем одного из них на страницу.
Приветствуются другие решения, если они соответствуют моим ограничениям!