首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在打开后在iframe中捕获快捷键

如何在打开后在iframe中捕获快捷键
EN

Stack Overflow用户
提问于 2012-03-17 04:58:19
回答 1查看 743关注 0票数 0

Fancybox在iframe中显示pikachoose图像查看器。键盘键用于在初始加载时在图像之间导航,键被忽略。只有在fancybox中单击时,关键点才会起作用。我添加了

代码语言:javascript
复制
              $('.pikachoose').focus();

但这并不能启用密钥。如果打开了iframe,如何让密钥立即生效?

iframe内容为:

代码语言:javascript
复制
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" <html>
<head>
    <link type="text/css" href="Pikachoose/bottom.css" rel="stylesheet" />
    <script type="text/javascript" src="jquery.min.js"></script>
    <script src="Pikachoose/jquery.pikachoose.full.js"></script>

    <script type="text/javascript">
            $(document).ready(function () {
                $("#pikame").PikaChoose({
                    autoPlay: false
                });

                $("html").keydown(function (evt) {
                    $('#pikame').data('pikachoose').Next();
                });
              // why this does not allow keydown event:
              $('.pikachoose').focus();
            });
    </script>
</head>
<body>
    <div class="pikachoose">
        <ul id="pikame">
            <li>
                <img src="img1" />
            </li>
            <li>
                <img src="img2" />
            </li>
            <li>
                <img src="img3" />
            </li>
        </ul>
    </div>
</body>
</html>
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-03-17 05:01:58

您的jQuery选择器是用于id的,而不是类的。

将javascript更改为$(".pikachoose").focus()或将class="pikachoose"更改为id="pikachoose"

编辑:

通常不能聚焦任意元素,比如div。但是有一种可能行得通的伪技巧:将tabindex放在元素上。可以使用-1来防止跳转时不需要的干扰。因此,要么将tabindex="-1"放在div中,要么将$(".pikachoose").attr("tabindex", -1).focus()放入代码中。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9744427

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档