製品ツアーを作成しましたが、コードを知らない人が編集できるようにする必要があるため、Twitterブートストラップのボイラープレートとモジュールを使用してビルドするフレームワークで行われました。 (D7のようなもの)。
ここに問題があります。ツアー自体は、上記の問題によるコードの大規模な回避策です。それは機能しますが、最高ではありませんが、私たちの最高です目の前の課題に対するソリューション。
詳細に説明しなくても、ツアーの各「スライド」をインデックスとして使用して機能しますが、DOM
にインデックスが見つからないため、console
に$('.tour-panel');
と入力すると、基本的には_tour-panel[]
_が返されますそれは存在しないと言っています。
その小さな序文で、ツアーパネルにリンクするために同じ呼び出しを2つ続けて送信すると(つまり、「ターゲット」を2回クリックすると)、パネルが壊れてツアー全体がブランクになります。
私たちのソリューション(汚いものですが)では、CSSを使用して、これらのパネルがアクティブなときにクリックを無効にします。
_.current-slide .active{
pointer-events:none;
cursor: auto;
}
_
これにより、カーソルが通常のカーソルに変わり、リンクをクリックできなくなります。現在影響しているリンクにのみ影響します。この種の無効化は悪いUXと見なされますか?
基本的な機能を無効にすることは悪いUXと見なされることは理解していますが、状況と問題を考えると、これで問題ないかと思いました。私の見たところ、誰かがダブルクリックしたため、ツアー全体のブレイクよりもUXは優れていますが、あなたの意見も欲しいと思います。
代わりに、クリックを無効にするだけです最初のクリックの後とユーザーに最初のクリックの結果として何かが起こっているカーソルの変更または通知?
このようにして、ユーザーは最初のクリックで実際に応答が登録され、2回目のクリックで「詰める」ことができないことを認識します。そして、彼らが再びクリックできないという事実は、彼らの最初のクリックが実際に登録されたことのさらなる承認に過ぎません。
そして、最後の質問にお答えしますが、誰かがダブルクリックしたので、ツアー全体を中断するよりもUXが優れていることに同意します。