Я работаю над пользовательским угловым компонентом, который в настоящее время выглядит следующим образом:
Небольшая зеленая часть, которую вы видите слева,моя попытка иметь отдельное перекрытие div
, так что когда я нажимаю на один из белых круглых селекторов, зеленый заполнен до этой точки.
Вот код, который у меня есть:
var shell = document.querySelector('.shell');
var inner = document.querySelector('.inner-shell');
shell.addEventListener('click', function(ev) {
alert("in");
if (ev.path && ev.path[0].className === 'indicator') {
var targetNode = ev.srcElement;
var centerX = targetNode.offsetLeft + targetNode.offsetWidth;
var centerY = targetNode.offsetTop + targetNode.offsetHeight;
inner.style.width = `${centerX + 40}px`;
}
});
.inner-shell {
background-color: #6FBC92;
width: 50px;
transition: 1s;
}
.shell {
background-color: #DCDCDC;
border-radius: 20px;
display: inline-flex;
}
.indicator {
background-color: #FFFFFF;
border: 1px solid #FFFFFF;
border-radius: 20px;
height: 13px;
margin: 3px 28px;
width: 13px;
}
<div class="inner-shell">
<div class="shell">
<div class="indicator"></div>
<div class="indicator"></div>
<div class="indicator"></div>
<div class="indicator"></div>
<div class="indicator"></div>
<div class="indicator"></div>
<div class="indicator"></div>
<div class="indicator"></div>
</div>
Вот что я получаю с кодом выше (я нажал на последний индикатор, чтобы перейти в это состояние):
Как я могу вместо этого поместить inner-shell
поверх shell
, но все еще под indicators
?
Спасибо