我正在使用jQuery自动完成插件来显示用户列表以及来自我的数据库的照片。当我在没有用户图像的情况下显示结果时,自动完成功能非常快。但是对于图像,图像需要一些时间来加载和显示。我知道图像会被下载然后显示出来。但是在Facebook中,图像会立即显示。我知道facebook使用高配置服务器来返回值并使用其他一些技术来显示图像。有没有办法可以将我的图像存储在DB或其他可以即时访问的其他地方?我正在使用Web服务以json格式返回值。
答案 0 :(得分:1)
您可以尝试在加载文本数据后加载图像。
例如,您可以使用带有attr <img class="searchThumb" src="blank.gif"/>
的空白图像(img_source
)创建结果,其中包含实际图像的网址(<img class="searchThumb" src="blank.gif" img_source="/real_img_url.jpg"/>
)。还要向open
事件添加功能,以显示图像。
简单示例(这只是示例,我没有测试它)
$(function() {
function showImages(){
$(".searchThumb").each(function(){
$(this).arrt("src", $(this).attr("img_source"));
});
}
$( "#birds" ).autocomplete({
source: "search.php",
minLength: 2,
open: showImages()
});
});
$(function() {
function showImages(){
$(".searchThumb").each(function(){
$(this).arrt("src", $(this).attr("img_source"));
});
}
function formatItemFn(row,pos,count,term){
// Here is formatting like I described before
if (pos==count) showImages();
}
$( "#birds" ).autocomplete({
source: "search.php",
minLength: 2,
formatItem: formatItemFn()
});
});
答案 1 :(得分:0)