サムネイルをクリックするのではなく、キーを押してライトボックス(ファンシーボックス)を開く/開始する方法を知っている人はいますか? たとえば、スペースバーを押すとライトボックスが開きますか?
私はjqueryに精通していないので、答えが明らかな場合はご容赦ください。
次のスクリプトを使用して、たとえば 文字「F 」を押して fancybox を開くことができます。
$(document).keyup(function(event) {
// open fancybox pressing "F"
if (event.keyCode === 70) {
$.fancybox({
href: "http://fancyapps.com/fancybox/demo/1_b.jpg"
});
}
}); //keyup
...私が見る問題は、(リンクのように)動的に渡すことができないが* [編集を参照]。href
、スクリプトにハードコードする必要があるということです
デモを見る(「F」を押す前に「結果」ウィンドウに集中する必要があります)
各 に対して返されるキー番号を知るためにkeyup
、追加できます
console.log(event.keyCode);
...同じスクリプトに(私のデモではコメントアウトされています)
注:これはfancybox v2.1.3でテストされました
編集(2014 年 3 月 11 日): 実際には fancybox を通常のリンクにバインドし、 keypressclick
の後にその要素でa をトリガーすることができるため、次の html があります。
<a class="fancybox" href="image.jpg">open fancybox</a>
あなたができる:
$(document).keyup(function (event) {
// console.log(event.keyCode);
// open fancybox pressing "F"
if (event.keyCode === 70) {
$(".fancybox").eq(0).trigger("click");
};
}).ready(function () {
$(".fancybox").fancybox();
});
「F」を押すか、リンクをクリックすると、fancyboxが起動します。
分岐を見るJSFIDDLE