5

Quoraでプレフィックスマッチングを使用してリアルタイムオートコンプリートを実行するにはどうすればよいですか?Quoraのプレフィックスマッチングと自動補完

SolrとSphinxはリアルタイム更新をサポートしていないので、リアルタイム更新をサポートするために何が変更されましたか?

答えて

1

javascriptとjqueryを使用しているようです。成功した結果が置かされることを

$.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)})})} 

注:ここではJSONデータを提供するリソースへのAJAX呼び出しがあります

:私は、私はこの理論をサポートすると思うQuoraのホームページに縮小さスクリプトからいくつかの重要な行をつかん変数 "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} 
}) 

の親から完成された「question_box」要素のKeyDownイベントに基づいて自動補完です比較するために縮小されたスクリプト。たとえば、私はresultsQueryPathがどこから来ているのかわかりません(私はソースを見つけることができず、意図的に難読化されている可能性があります)。

+0

これは主な質問です。結果が「a」変数にどのように入れられるのですか。クライアント側のオートコンプリートは、小さな結果セットを持っていても大したことではありません。私の質問はバックエンドでのリアルタイムプレフィックスマッチングに関するものです。 – r15habh

+0

ああ、私はあなたが得ているものを見て、良い点。私はQuoraには約20万の質問があり、それらはすべてクライアントサイドにロードできないと思います。私はQuoraで働かないので、私は本当に推測することはできません。 – jpredham

関連する問題