Intro.jsのようなWebサイトのツアーを実装するオープンソースのJSライブラリ・「TourGuide.js」

Ads

TourGuide.js


TourGuide.jsはIntro.jsのようなWebサイトのツアーを実装するオープンソースのJavaScriptライブラリです。

商用ライセンスは有償のIntro.jsとほぼ同じ動きをする代替ライブラリとして利用可能で、実装も簡単です。

<script src="https://unpkg.com/@sjmc11/tourguidejs/dist/tour.js" crossorigin="anonymous" referrerpolicy="no-referrer"></script>
<link rel="stylesheet" href="https://unpkg.com/@sjmc11/tourguidejs/dist/css/tour.min.css">

👆ライブラリとCSSを読み込みます。

<div data-tg-tour="<span>foo</span>">bar</div>

👆ツアーを仕込みたい箇所にdata-tg-tour属性を付与し、内容を記述します。内容はHTMLタグが利用可能です。

const tg = new TourGuideClient()

👆初期化すれば完了です。

{
autoScroll: boolean = true// 自動スクロール
autoScrollSmooth: boolean = true // スムーズな自動スクロール
autoScrollOffset: number = 20// 含オフセットな自動スクロール
backdropClass: string = ""// ツアー時の背景箇所に追加するclass
backdropColor: string = "rgba(20,20,21,0.84)"// 背景カラー
targetPadding: number = 30// スペース。単位はpx
backdropAnimate: boolean = true// 背景アニメーション
dialogClass: string = ""// ダイアログに追加するclass
dialogZ: number = 999// ダイアログのz-index
dialogWidth: number = 0// ダイアログに付与するwidth。画像を読み込むときに
dialogMaxWidth: number = 340// ダイアログのmax-width
dialogAnimate: boolean = true// ダイアログのアニメーション
closeButton: boolean = true// 閉じるボタンの表示
nextLabel: string = "Next"// 次へボタンのテキスト
prevLabel: string = "Back"// 戻るボタンのテキスト
finishLabel: string = "Finish"// 終了ボタンのテキスト
hidePrev: boolean = false// 戻るボタンの非表示
hideNext: boolean = false// 次へボタンの非表示
completeOnFinish: boolean = true// 終了時にlocalStorageに「ツアー終了」をセットする
showStepDots: boolean = true// ドットを表示してツアーの進捗を明示
stepDotsPlacement: 'footer' | 'body' = "footer"// ダイアログのbody/footerにポイントを表示
showButtons: boolean = true// 次へ・戻るボタンの表示
showStepProgress: boolean = true// 「1/5」のような進捗明示
keyboardControls: boolean =false// キーボードコントロール対応
exitOnEscape: boolean = true// escapeキーでツアー終了
exitOnClickOutside: boolean = true// 背景クリックでツアー終了
rememberStep: boolean = true// 最後にアクティブになったステップでツアーを開く
debug: boolean = false// デバッグモード
steps: TourGuideStep[]// ツアーの手順を事前に定義
}

👆オプションも豊富に用意されています。

使いやすくて良いですね。商用でIntro.jsを使ってたけどコストを抑えたい、という方は如何でしょうか。ライセンスはISCとの事です。

TourGuide.js