Javascript ve jquery kullanılarak yapıldığı anlaşılıyor. Başarılı sonuç koymak alır o
$.ajax({type:"GET",url:this.resultsQueryPath,dataType:"json",data:a,success:this.fnbind(ƒ(a){this.ajaxCallback(a)}),error:this.fnbind(ƒ(a,b,c){console.log(b,c),this.requestOutstanding=!1,this.$("#@results_shell").html("Could not retrieve results: "+b)})})}
notu: Burada
JSON verilerini sağlayan bir kaynağa ajax çağrısı: Ben düşünüyorum Quora ana sayfasında minified komut birkaç önemli çizgiler bu teoriyi destekleyen yakaladı "a" değişkenine. Ardından daha sonra buradan ebeveynden üzeredir "question_box" öğesinin keydown dayalı otomatik tamamlama var "a"
this.$ ("#@item input.question_box").keydown (ƒ (b) {
if (b.keyCode==9&&!b.shiftKey)for (var c=e.getLiveDomId (a.cid),d=a.parent().orderedVisibleChildren(),f\^M=0;f<d.length-1;++f)if (c==d [f]) {
$ (this).blur(),$ ("#"+d [f+1]+" input.question_box").focus();return!1}
})
ben bu oldukça götürmez olduğunu düşünüyorum, ama yine de un- olması güzel olurdu karşılaştırmak için minimize edilmiş betik. Örneğin resultsQueryPath'in nereden geldiğini göremiyorum (kaynağını bulamıyorum, kasıtlı olarak gizlenmiş olabilir).
Asıl soru şu ki ... "a" değişkenine nasıl sonuç konulur, sonuçta küçük bir sonuç kümesine sahip olursanız, istemci tarafındaki otomatik tamamlama çok da önemli değildir. Benim sorum arka uçta gerçek zamanlı önek eşleme ile ilgili. – r15habh
Ah, neye gittiğini görüyorum, iyi nokta. Bence Quora'nın 200.000 civarında soruları var ve bunların hepsi istemci tarafında yüklenemedi. Quora'da çalışmıyorum, bu yüzden gerçekten spekülasyon yapıyorum. – jpredham