#jquery #css
#jquery #css
Вопрос:
Я хотел показать класс car-info в slidedown, когда мышь находится над ним… и наоборот, заставьте его скользить вверх при наведении курсора мыши. Как я могу сделать это в jquery?
$(".items .title-bar").on("mouseover",this, function () {
//how use car-info slide down
});
$(".items .title-bar").on("mouseout",this, function () {
//i wanted .title-bar and .car-info .. mouseout event and .car-info is slideup
});
перед mouseover
с mouseover
//смотрите мой jfiddle http://jsfiddle.net/kisspa/es3gx
Комментарии:
1. Попробуйте использовать события
mouseenter
иmouseleave
вместоmouseover
иmouseout
.2. Что
this
должно быть в этом коде, которому вы не можете делегироватьthis
?3. как использовать css и jquery
Ответ №1:
Сначала вы должны включить библиотеки jQuery, затем появляется несколько ошибок (JS и CSS).
Смотрите здесь:
$(".items .title-bar").on("mouseover", function () {
$(this).closest(".items").find(".car-info").slideDown(); //@Vedant Terkar edit
});
$(".items .title-bar").on("mouseout", function () {
$(this).closest(".items").find(".car-info").slideUp(); //@Vedant Terkar edit
});
и в CSS вы должны удалить z-index и скрыть поле с помощью атрибута display:
.car-info{
background-color: #fff;
border: 1px solid #ccc;
padding: 15px 10px;
text-align: justify;
display: none;
}
Демо-версия скрипки здесь:http://jsfiddle.net/es3gx/5 /
Комментарии:
1. 1. Все еще нужны модификации. Взгляните на мой ответ.
2. я хотел этот стиль наведения курсора мыши и наведения курсора мыши
3. привет, друг!! я хотел, чтобы mouseout был .car-info после того, как он сдвинется вверх
4. я не понимаю, чего вы ожидаете. эффект слайда на самом деле при наведении курсора мыши. посмотрите на демонстрацию jsfiddle.net/es3gx/5
5. привет, ты в порядке, друзья
Ответ №2:
Просто вариант ответа @pumpkinzzz,
Здесь это будет только slideUp
/ slideDown
соответствующее div
.
Использовать:
$(".items .title-bar").on("mouseover", function () {
$(this).closest(".items").find(".car-info").slideDown(); // .closest means nearest parent with that attribute and .find means child within that parent with specified attribute.
//how use car-info slide down
});
$(".items .title-bar").on("mouseout", function () {
$(this).closest(".items").find(".car-info").slideUp();
});
Вот Fiddle
.
Также, согласно вашему комментарию, я создал новый Fiddle
В этом я добавил z-index
и position:absolute
к различным элементам. Итак, вот ваши измененные css
:
.car-info{
background-color: rgba(255,255,255,0.5); /* changed for attractiveness */
border: 1px solid #ccc;
padding: 15px 10px;
text-align: justify;
display: none;
position:relative;
z-index:10; /* Added to float car-info on car-image */
height:270px;
overflow:auto;
clear:both;
}
.photos-wrap{
border-bottom:1px solid #ccc;
height:300px;
position:absolute; /* Added to Absolutely position car-photo beneath car-info */
top:62px;
left:0px;
z-index:5; /* Added to float car-info on car-image Any value< z-index of .car-info is acceptable */
display:inline-block; /* Just changed */
}
Надеюсь, это удовлетворит ваши потребности.
Комментарии:
1. @NyaungBinHla, смотрите ссылку на новую скрипку
2. да, сэр. ваш ответ очень хорош,. я хотел, чтобы slideup был при наведении курсора мыши на класс .car-info
3. @NyaungBinHla, наконец-то я это исправил. Взгляните на: jsfiddle.net/es3gx/11
Ответ №3:
вам нужно изменить в css
и jquery
$(".items .title-bar").on("mouseenter",this, function () {
//how use car-info slide down
console.log($(this).next());
$(this).next().slideDown();
});
$(".items .title-bar").on("mouseleave",this, function () {
//how use car-info slide up
$(this).next().slideUp();
});
CSS
.car-info{
background-color: #fff;
border: 1px solid #ccc;
padding: 15px 10px;
text-align: justify;
z-index: -1;
display:none;
}
Комментарии:
1.да, сэр. ваш ответ очень хорош,. я хотел, чтобы slideup был при наведении курсора мыши на класс .car-info
Ответ №4:
Опять же, mouseenter и mouseleave, вероятно, являются лучшими вариантами, возможно, попробуйте что-то вроде следующего:
$( ".items" ).mouseenter(function() {
$(this).find(".photos-wrap").slideDown();
})
.mouseleave(function() {
$(this).find(".photos-wrap").slideUp();
});
Ответ №5:
$(".items .title-bar").hover(function () {
$(this).next('div.car-info').slideDown(700);
//how use car-info slide down
}, function () {
$(this).next('div.car-info').slideUp(700);
});
ДЕМОНСТРАЦИЯ: