Есть вертикальный список div'ов,с классом res и функция,которая происходит при наведении курсора мыши на этот блок
Как в этой функции создавать блок (или менять его отступы) чтобы он был справа от тега,на который происходит mouseover?
<div class="res"></div>
$( ".res" ).mouseover(function(event) {
var first = this;
var second = event.clientY;
alert(Number(second.offsetTop));
var distance = second.offsetTop - first.offsetTop - first.offsetHeight;
alert(distance);
});
Правильно понял?
Вертикальный вариант
$('.menu a').hover(function(){
EffectPos($(this));
});
EffectPos($('.menu a').eq(0));
function EffectPos(elem){
var AposY = elem.offset().top;
var Aheight = elem.height();
$('.effect').css({
'top': AposY,
'height': Aheight
});
}
.menu {
display: block;
width: 200px;
background: #ddd;
}
.links {
display: block;
width: calc(100% - 2px);
padding-left: 2px;
}
.links a {
display: block;
width: calc(100% - 10px);
padding: 5px;
color: #333;
text-decoration: none !important;
}
.links a:hover {
background: #999;
}
.effect {
display: block;
width: 2px;
padding: 5px 0;
background: #07f;
position: absolute;
}
.links a, .effect {transition: all linear .2s;}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
<div class="menu">
<div class="links">
<a href="/">Один</a>
<a href="/">Два</a>
<a href="/">Три</a>
<a href="/">Четыре</a>
<a href="/">Пять</a>
<a href="/">Шесть</a>
</div>
<div class="effect"></div>
</div>
Горизонтальный вариант
$('.menu a').hover(function(){
EffectPos($(this));
});
EffectPos($('.menu a').eq(0));
function EffectPos(elem){
var AposX = elem.offset().left;
var Awidth = elem.width();
$('.effect').css({
'left': AposX,
'width': Awidth
});
}
.menu {
display: block;
width: 100%;
height: 40px;
background: #ddd;
}
.links {
display: block;
width: 100%;
height: 38px;
}
.links a {
display: inline-block;
height: 38px;
line-height: 38px;
padding: 0 5px;
color: #333;
text-decoration: none !important;
}
.links a:hover {
background: #999;
}
.effect {
display: block;
height: 2px;
padding: 0 5px;
background: #07f;
position: absolute;
}
.links a, .effect {transition: all linear .2s;}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
<div class="menu">
<div class="links">
<a href="/">Один</a>
<a href="/">Два</a>
<a href="/">Три</a>
<a href="/">Четыре</a>
<a href="/">Пять</a>
<a href="/">Шесть</a>
</div>
<div class="effect"></div>
</div>
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости