1
我有一個使用AJAX填充搜索結果字段的搜索功能。我想爲每個搜索結果添加樣式,並添加一些效果(如「加載動畫」)。目前,我有這樣的代碼:CSS/AJAX - 通過AJAX調用激活樣式
$.ajax({
type: 'GET',
url: '/Search',
data: {
'search_value': str
},
dataType: 'text',
})
.done(function(json) {
var Search = JSON.parse(json), searchHTML = '', x;
for (x in Search) {
$('<span id="item'+x+"' class="search-item" style="display: none;">'+ Search[x] + '</span>').appendTo('#main').show('slow');
}
});
這個作品,但是.show()
我發現有點沉重的性能,因此這樣想減少多少的性能用來製作動畫的每個搜索結果的加載。
我試圖建立這樣的:
$.ajax({
type: 'GET',
url: '/Search',
data: {
'search_value': str
},
dataType: 'text',
})
.done(function(json) {
var Search = JSON.parse(json), searchHTML = '', x;
for (x in Search) {
$('<span id="item'+x+"' class="search-item off" style="display: none;">'+ Search[x] + '</span>').appendTo('#main').removeClass('off');
}
});
然後我對這個CSS是:
.search-item{
max-height: 256px;
overflow: hidden;
transition: 3s;
}
.search-item.off{
max-height: 0px;
}
通過這樣做,它會立即刪除掉,然後使用transition
CSS屬性使它增長超過3秒(只是一個測試時間 - 它可能會像0.5s
什麼的)。
唯一的問題是,它只是刪除類,但沒有過渡效果(如果我刪除removeClass()
代碼,然後使用螢火蟲或其他開發工具刪除類,它工作正常)。
是否有人知道如何解決此問題並獲取它以便transition
屬性適用,並且結果不會立即顯示?
謝謝。
哇大作!現在我只需要讓它添加更多的內容(我的搜索功能中有一個下拉功能)並且應該很棒!再次感謝你的幫助! – 4lackof
將'text'更改爲'html'以允許進一步的html嵌套,並且它是完美的!謝謝! – 4lackof