Итак, ваша проблема, imo, в том, что вы, вероятно, не должны определять функцию щелчка в html, как эта.
Мне кажется, на сайте уже установлен jQuery, так почему бы вам не использовать это для упрощения? Вы хотите назначить щелчок элементам <i>
, например:
$('#ib-menu i').click(function() { /* do your work in here*/ });
Внутри функции this
является текущим выбранным элементом, а $(this)
является выбранной jQuery версией этого элемента. Вы можете использовать jQuery для добавления и удаления классов, а также для добавления и удаления стилей, а также для поиска элементов, которые являются родительскими или дочерними для выбранного вами элемента.
Например, если вы хотите найти 'обертку подменю', которая является родителем выбранного в данный момент элемента, внутри функции, которую вы напишите var subMenu = $(this).closest('.sub-menu-wrap')
, а затем оттуда вы можете проверять и изменять стили и классы
jQuery облегчит вашу жизнь. На каждый ваш вопрос в Интернете уже есть миллион ответов.