2016-04-14 4 views
0

Есть ли способ выполнить уже определенную функцию в javascript каждый раз, когда происходит изменение анимации ослабления функции slideToggle()?JQuery Функция SlideToggle() выполняет каждый шаг облегчения

Пример:

SlideToggle("1000", "linear", functiontoexecute()) 

Я хотел бы functiontoexecute() выполнить каждый шаг это происходит на «линейный» ослабление.

Я уже смотрел на JQuery веб-страницы для .slideToggle() и пытался использовать «прогресс» или варианты «шаг» ... но они либо не выполняют, как и ожидалось, или я не правильно их использовать ...

Для получения более подробной информации я использую JQuery 1.9.1

ответ

5

Документация jQuery о том, как использовать эти параметры, не самая лучшая, так как ни один из примеров не использует ее в полной мере. Вот пример использования функции прогресса, но мы надеемся, что вы можете адаптировать это то, что ваши потребности: -

$("#book") 
 
    .slideToggle({ 
 
    duration: 400, 
 
    progress: functionToExecute, 
 
    complete: function() { 
 
     console.log('animation completed'); 
 
    } 
 
    }); 
 

 
function functionToExecute(animation, progress, remainingMs) { 
 
    $('p').text('here and progress count is ' + progress); 
 
}
.wrap { 
 
    height: 100px; 
 
    width: 200px; 
 
    margin: 10px 10px 10px 10px; 
 
    background-color: #2d8cd0; 
 
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script> 
 
<div class="wrap" id="book"> 
 
    <h2>1</h2> 
 
</div> 
 

 
<p>Progress: <span id="progress">0</span></p>

+0

Большое спасибо, это было то, что я искал! – Ignasi