0
正如你所看到的動畫真的很生澀。我需要使用搜索欄和隨機播放圖標的平滑淡入淡出來順利滑動搜索圖標。結果框出現時也是如此。我嘗試過各種動畫的時間和設置組合,這些問題依然存在。
代碼:
// jQuery Shortcuts
const search_bar = $('#search_bar');
const search_button = $('#search_button');
const search_query = $('[name=search_query]')[0];
const links = $('#links');
const random = $('#random_button');
// Animations
// activate search on click
search_button.click(show_and_hide);
// reset screen on random click
random.click(hide_and_show);
// activate results window on keypress
search_bar.keypress(function(){
random.slideUp(1000, 'linear');
links.slideDown(1000, 'linear');
});
// if search bar is empty (from deleting) revert back to search icon
search_bar.keyup(function(){
if(search_bar.val().length === 0){
links.slideUp(1000, 'linear');
hide_and_show();
}
});
// function to show the random button and search bar while hiding search icon
function show_and_hide(){
search_button.fadeOut(1000, 'linear');
random.slideDown(1000, 'linear');
search_bar.slideDown(1000, 'linear');
search_bar.select();
}
// hide search bar and display search button
function hide_and_show(){
search_bar.slideUp(1000, 'linear');
random.slideUp(1000, 'linear');
search_button.slideDown(1000, 'linear');
}
// Link generator function for results window
function link_generator(data){
var i = 0,
title = data[1],
description = data[2],
link = data[3];
for(i; i < data[3].length; i++){
var list_link = '<a href="'+link[i]+'">'+title[i]+'</a><br/>';
list_description = list_link+description[i]+'<hr>';
links.append(list_description);
}
}
// Wiki Auto-complete
search_bar.autocomplete({
source: function(query, result) {
$.ajax({
url: "https://en.wikipedia.org/w/api.php",
dataType: "jsonp",
data: {
'action': "opensearch",
'format': "json",
'search': query.term
},
success: function (data) {
links.empty();
link_generator(data);
}
});
}
});
你應該發表一個http://jsfiddle.net – Neil
我codepen鏈接更新是可以嗎? – vampiire
我認爲問題在於動畫在第一個動畫完成之前就開始了,所以它們重疊並且結結實實。有任何解決這個問題的方法嗎? – vampiire