2012-02-19 35 views
22

使用上下文工具提示提供webapp快速瀏覽的最佳方式是什麼?提供「工具提示遊覽」的最佳方式

使用案例:

  • 用戶導航到webapp的
  • 某種形式的彈出窗口,如果用戶想要的界面導遊
  • 用戶可以點擊每個提示旁邊問要顯示的下一個
  • 用戶可以通過點擊某種退出X或按鈕

的隨時取消旅遊是否有容易的圖書館在那裏,這是否?

謝謝!

+2

我寫了一個短[評論] [1]關於最近在公佈的對網頁的指導和web應用之旅dailyjs.com。在這裏你可以找到幾個DIY解決方案來實現這個功能。 <無關緊要的插件> 您也很樂意在iridize.com上查看我們的[頁面指導服務] [2]。我希望這是提供給用戶的最佳方式,我相信這將是最簡單的。 [1]:http://dailyjs.com/2012/11/02/on-screen-guidance-intro [2]:https://開頭iridize.com – odedbd 2012-12-22 18:03:37

回答

25

最簡單的方法是使用Jeff Pickhardt的Guider-JS javascript工具提示漫遊庫。它非常易於使用(雖然它也有幾個非常先進的功能),並且完全按照您所描述的內容進行操作。

您可以檢查出使用Guider-JS製作的工具提示步驟的this excellent example

如果您想查看生產站點上的工作示例,可以在optimizely.com上廣泛使用該示例,以便爲用戶界面提供幫助和演練指南。

更新: ZURB基金會現在維護優秀的"Joyride" tooltip tour javascript庫。

+2

正是我期待的! – 2012-02-19 21:51:36

+1

如果它回答你的問題,請記住標記爲「已接受」。 – BenjaminRH 2012-02-19 23:44:53

+1

Joyride是一個很好的選擇 - 把我的開發時間縮短一半! – carbontwelve 2013-12-04 11:31:57

0

你也可以使用帶有迭代器的鏈表來自己編寫巡視部分,迭代器總是調用回調來設置工具提示,一個關閉它。然後你可以使用任何你想要的工具提示腳本。下面是概念的快速證明應該告訴你我的意思是:

var toolTipList = { 
    tooltips: [], 
    currentTooltip: {}, 
    addTooltip: function(tooltip){ 
     var currentTail = this.tooltips.length > 0 ? this.tooltips[this.tooltips.length - 1] : {}; 
     var newTail = { 
      tooltip: tooltip, 
      prev: currentTail 
     }; 
     currentTail.next = newTail; 
     this.tooltips.push(newTail); 
    }, 

    initialize: function(){ 
     this.currentTooltip = this.tooltips[0]; 
     this.currentTooltip.tooltip.callback(); 
    }, 

    next: function(){ 
     if(this.currentTooltip.next){ 
      this.currentTooltip.tooltip.close(); 
      this.currentTooltip = this.currentTooltip.next; 
      this.currentTooltip.tooltip.callback();   
     } 
    }   
}; 


for(var i = 0; i < 10; i++){ 
    toolTipList.addTooltip({ 
     callback: function(){ 
      // called every time next is called 
      // open your tooltip here and 
      // attach the event that calls 
      // toolTipList.next when the next button is clicked 
      console.log('called'); 
     }, 
     close: function(){ 
      // called when next is called again 
      // and this tooltip needs to be closed 
      console.log('close'); 
     } 
    }); 
} 

toolTipList.initialize(); 

setInterval(function(){toolTipList.next();}, 500); 

​JSFiddle link