Если я правильно понял, вы хотите переключать положение меню, когда пользователь нажимает кнопку.
Для этого сначала нужно создать простое меню и кнопку в HTML, например:
<ul class="left">
<li>Menu item 1</li>
<li>Menu item 2</li>
<li>Menu item 3</li>
</ul>
<br class="clearFloat" />
<button onClick={togglePosition()}>Change position</button>
Для этого HTML мы должны написать соответствующий CSS.
.left {
float: left;
}
.right {
float: right;
}
.clearFloat {
clear: both;
margin: 0;
padding: 0
}
button {
display: block;
}
Свойство CSS float
может размещать элементы HTML влево и вправо. Вот почему я создал два CSS-класса для них. Применение одного из этих классов к меню приведет к его изменению позиции (.left
для левой позиции, .right
для правой позиции).
Обратите внимание, что меню в HTML имеет className .left
. Это начальная позиция, где вы хотите, чтобы ваше меню было.
Теперь нам нужно заставить меню переключать классы .left
и .right
, нажав на кнопку в HTML. Мы можем сделать это, написав функцию в javascript и вызвав ее с помощью клавиши onClick
на кнопке. В этом случае будет вызываться функция togglePosition()
для переключения имен классов для меню. Эта функция может выглядеть примерно так:
togglePosition = () => {
const menu = document.querySelector('ul')
if(menu.className == 'left') {
menu.className = 'right';
} else {
menu.className = 'left';
}
}
Это все очень просто, и есть лучшие / более оптимизированные способы сделать это, но я надеюсь, что вы поймете концепцию и сможете извлечь из нее уроки. Ссылка на интерактивную игровую площадку: https://jsfiddle.net/udwfnzme/4/