Как отображать линию, когда я навешиваю над своим кругом div?Как заставить div исчезнуть/появиться при зависании на другом div?
#line {
display: none
}
<div id='circle'>
<div id= 'line'>
Как отображать линию, когда я навешиваю над своим кругом div?Как заставить div исчезнуть/появиться при зависании на другом div?
#line {
display: none
}
<div id='circle'>
<div id= 'line'>
Предполагая, что вы используете JQuery вы можете использовать:
var enterHandler = function(){
$("#line").show();
};
var leaveHandler = function(){
$("#line").hide();
};
$("#circle").hover(enterHandler, leaveHandler);
Серьезно вам нужен jQuery и JavaScript для такого простого? Не можете ли вы использовать только CSS? –
Да Правеен, вам понадобится Javascript для этого. Если у вас есть что-то конструктивное для добавления, пожалуйста, не стесняйтесь. –
Приятель, пожалуйста, любезно проверьте мой ответ. Для этого вам не нужен JavaScript. CSS достаточно. JS и DOM Manipulation - очень дорогостоящие вещи для браузера. Вы согласны? –
Если вы используете JQuery, то вы можете просто попробовать:
$('#circle').on('mouseover', function() {
$('#line').show();
});
$('#circle').on('mouseleave', function() {
$('#line').hide();
});
Ну, вопрос был недостаточно ясен, и использование javascript и jQuery не будет зависеть от порядка элементов, особенно если между ними есть другие элементы. –
Первая вещь, с кодом, не ясно, если <div>
s являются братьями и сестрами являются вложенными , Я дам вам решение для обоих.
Уплотненный
div {
padding: 10px;
background: #99c;
}
#line {
display: none;
background: #9c9;
}
#circle:hover #line {
display: block;
}
<div id='circle'>
<div id='line'>
</div>
</div>
Братья
div {
padding: 10px;
background: #99c;
}
#line {
display: none;
background: #9c9;
}
#circle:hover + #line {
display: block;
}
<div id='circle'>
</div>
<div id='line'>
</div>
JQuery будет простейшим.
$('#circle').hover(function(){
$('#line').css('display','inline');
});
или что бы вы ни отображали для отображения.
Серьезно вам нужен jQuery и JavaScript для такого простого? Не можете ли вы использовать только CSS? –
Правеен ошибается, но это также не совсем корректно, так как у вас нет обработчика, чтобы снова спрятать линию на выходе мыши. –
@ RichardGuy Просьба дать конструктивный комментарий. Если это было грубо, мне очень жаль. –
Попробуйте это в тег сценария и использовать OnMouseOver и onmouseout событий
<script>
function hidediv() {
document.getElementById('line').style.display = 'none';
}
function showdiv() {
document.getElementById('line').style.display = 'block';
}
</script>
<div id='circle' onmouseover="hidediv();" onmouseout="showdiv();" > this is circle
<div id= 'line'>this is line
</div>
</div>
Там нет HTML? Почему вы, ребята, не читали правила на [ask], прежде чем спрашивать? –
Это недействительный HTML. Не могли бы вы разместить полный код? И будьте предельно ясны и конкретны, на каких div нужно парить и которые следует скрывать. –
Вы удалили предыдущую версию этого вопроса, заданную немного назад, и сделали очень мало, чтобы улучшить эту версию с последнего. Вы также не пытались решить эту проблему самостоятельно. Это не кодирование – charlietfl