1

我正在一個網站列出很多東西出售,如gumtree或craigslist。實現AJAX「滑塊」的最佳方式是什麼?

我們正在構建一個「滑塊」,以便用戶可以輕鬆地按價格細化搜索。

  • 滑動的控制向左或向右改變最小/最大價格
  • 或點擊分離向上/向下箭頭爲最小和最大
  • 或鍵入每個框中的一個數值:可以在用戶。

我們目前有工作,以便更改任何控制後,將列表更新重點是改變之後。但是在測試過程中,我們發現有些用戶不會改變焦點,或者之後他們只是點擊瀏覽器滾動條,這不會改變焦點。

由於顯而易見的原因,我們不能讓列表更新過快,因爲它們似乎會「跳來跳去」,並且我們還希望將HTTP請求保持在最低限度。

其他網站誰已經很好地解決了這個問題的一些例子?

根據最佳用戶體驗和最少發送請求,實現此目的的最佳方式是什麼?

回答

0

不完全jQueryUI的,但在ExtJS的類似的東西:http://dev.sencha.com/deploy/ext-4.0.7-gpl/examples/view/animated-dataview.html
的ExtJS的事件偵聽器提供這個目的而方便buffer屬性。在這個特定的例子中,它是70毫秒,所以你沒有看到太多的效果。

不確定關於jQuery UI,但它不應該很難實現。這是如何工作的:

相反反應,模糊事件的,你應該聽鼠標移動,KEYDOWN,克利克,鼠標滾輪等

  • 當用戶更改過濾器:

    if (listing.timer) { window.clearTimeout(listing.timer); } 
    listing.timer = window.setTimeout(eventHandler, buffer); 
    
  • 當列表重新加載/銷燬或應用其他一些過濾器時:

    window.clearTimeout(listing.timer); 
    
  • 事件處理程序看起來像

    function eventHandler() { 
        window.clearTimeout(listing.timer); 
        delete listing.timer; 
        // cancel pending requests if present... 
        sendRequest(getFilterValues(), ...); 
    } 
    
相關問題