Ответ 1
Вы можете использовать функцию delay()
перед вашими вызовами fade*
или просто вставлять все в setTimeout
таймер JS.
Привет, я написал две функции jquery для простого меню замирания, он в основном разбивает экран пополам и позволяет перейти на один из двух сайтов. Как я могу установить задержку, например, за 2 секунды до того, как эти функции будут работать? Здесь мой код:
$('#retailNav').bind({
mouseenter: function() {
$('#retailFull:not(:animated)').fadeIn('slow');
$('#residentialNav:not(:animated)').fadeOut('slow');
},
mouseleave: function() {
$('#retailFull').fadeOut('slow');
$('#residentialNav').fadeIn('slow');
}
});
$('#residentialNav').bind({
mouseenter: function() {
$('#retailHalf:not(:animated)').fadeOut('slow');
$('#retailNav:not(:animated)').fadeOut('slow');
$('#residentialFull p').html('Click to enter residential');
},
mouseleave: function() {
$('#retailHalf').fadeIn('slow');
$('#retailNav').fadeIn('slow');
$('#residentialFull p').html('Residential');
}
});
Как-то обернуть их в другую функцию?
Вы можете использовать функцию delay()
перед вашими вызовами fade*
или просто вставлять все в setTimeout
таймер JS.
Вы можете уйти с:
function thisFunction() {
$('#retailNav').bind({
mouseenter: function() {
$('#retailFull:not(:animated)').fadeIn('slow');
$('#residentialNav:not(:animated)').fadeOut('slow');
},
mouseleave: function() {
$('#retailFull').fadeOut('slow');
$('#residentialNav').fadeIn('slow');
}
});
$('#residentialNav').bind({
mouseenter: function() {
$('#retailHalf:not(:animated)').fadeOut('slow');
$('#retailNav:not(:animated)').fadeOut('slow');
$('#residentialFull p').html('Click to enter residential');
},
mouseleave: function() {
$('#retailHalf').fadeIn('slow');
$('#retailNav').fadeIn('slow');
$('#residentialFull p').html('Residential');
}
});
}
setTimeout(thisFunction(), 2000);