Слепить элемент и изменить стиль CSS в то же время

0

Я работаю над своим портфолио и нуждаюсь в помощи для #blind элемента и изменения свойства стиля в нижнем элементе одновременно.

Идея состоит в том, чтобы существовать фиксированное пространство между двумя элементами, например, это ПРИМЕР

Если вы видите пример, когда вы нажимаете, появляется панель и пробел между двумя остается. Затем, если вы нажмете еще раз, элемент скроется, и пространство останется тем же!

"#contacts" → элемент, который я хочу ослепить

"#line" → элемент, я хочу изменить верхнее свойство

Я пытаюсь разрешить использование функции jquery под названием "blind":

   $("#contacts").toggle("blind", {direction : "vertical"}, 500);

Затем я получаю верхнее значение #line, если:

   var line = $( "#line" ); 
   var  position = line.position(); 
   var top = position.top;
   if(top == value){
   $("#line").animate({top:'100px'}, time);
   } else { ... }

Пожалуйста помоги!!

  • 1
    Ваша консоль выдает какие-либо ошибки? Вы понимаете, что вам нужно импортировать jQuery и jQuery UI, чтобы это работало, верно? Можете ли вы предоставить демо вашего кода?
  • 0
    Нет ошибок! Я уже разрешаю это, но не работает должным образом хорошо. Если я дважды нажму на примере космического сбоя
Показать ещё 4 комментария

1 ответ

0
Лучший ответ

Я бы сделал это без jQuery UI, используя top значение и z-index

var contactTop = 85,
    nextTop;
$(".oppen").click(function() {
        nextTop = nextTop !== contactTop ? contactTop : 5;
        $("#contacts").animate({top: nextTop}, 500);
    .....

демонстрация

Чтобы остановить очередь, вы можете применить ту же технику на #line в дополнение к использованию jQuery .stop

var contactTop = 85,
    nextTop,
    lineStart = 100,
    lineEnd = 180,
    lineTop = 100;
$(".oppen").click(function() {
    nextTop = nextTop !== contactTop ? contactTop : 5;
    $("#contacts").stop().animate({top: nextTop}, 500);
    lineTop = lineTop !== lineStart ? lineStart : lineEnd;
    $( "#line" ).stop().animate({top:lineTop}, 500);
});

демонстрация

  • 0
    Да!!! Это действительно ты -> zachsaucier.com omg
  • 0
    Еще один вопрос. Если дважды быстро щелкнуть по кнопке «Сбой перехода», я имею в виду поле вверх, но линия остается внизу.
Показать ещё 4 комментария

Ещё вопросы

Сообщество Overcoder
Наверх
Меню