`

支持键盘按键的jQuery导航应用

阅读更多
Jan
28

支持键盘按键的jQuery导航应用

helloweba.com Author:月光光 Time:2011-01-28 12:16 Tag: jquery 

在本文中我将为您介绍如何侦听用户键盘按键事件,通过使用键盘来切换导航菜单,也为用户提供了方便,从而使导航功能更加实用。

查看演示DEMO 下载源码

XHTML

<div id="nav"> 
    <ul> 
        <li><a href="#home">首页[A]</a></li> 
        <li><a href="#about">关于[S]</a></li> 
        <li><a href="#product">产品[D]</a></li> 
        <li><a href="#service">服务[F]</a></li> 
        <li><a href="#blog">BLOG[G]</a></li>        
    </ul> 
</div> 
<div id="home" class="box"> 
    <h2>Welcome!</h2> 
    <p>Some Text</p> 
</div> 
<div id="about" class="box"> 
    <h2>About me</h2> 
    <p>Some Text</p> 
</div> 
<div id="product" class="box"> 
    <h2>Product</h2> 
    <p>Some Text</p> 
</div> 
<div id="service" class="box"> 
    <h2>Service</h2> 
    <p>Some Text</p> 
</div> 
<div id="blog" class="box"> 
    <h2>My Blog</h2> 
    <p>Some Text</p> 
</div> 

创建一个包含导航菜单#nav和菜单对应的内容.box,注意导航菜单中含有对应的字母就是要用到的键盘按键导航功能。

CSS

#nav{width:460pxmargin:0 auto#nav ul{list-style:noneheight:24px#nav ul li{float:leftfont-size:14pxfont-weight:bold#nav ul li a{display:blockcolor:#369margin-right:20px#nav ul li a:hover{color:#f90.box{width:400pxheight:300pxmargin:20px autopadding:10px 20pxline-height:22px.box h2{padding:5px 10pxwidth:200pxbackground:#9cfcolor:#fff#home{background:#15add1#about{background:#fdc700#product{background:#f80083#service{background:#f18300#blog{background:#98c313

以上CSS代码将导航菜单设置为一行,为了演示,我给每个导航菜单对应的模块内容背景设置了不同的颜色。

jQuery

关键来看jQuery,首先要引用jquery库,以及我分离出来的一个keynav.js文件。

<script type="text/javascript" src="js/jquery.js"></script> 
<script type="text/javascript" src="js/keynav.js"></script> 

接下来在keynav.js文件中准备两个函数,一个是当用户按键操作时用来调用的函数showViaKeypress(),当用户按键时,导航对应的模块显示出来,其他模块隐藏,请看代码:

function showViaKeypress(element_id){ 
    $(".box").css("display","none"); 
    $(element_id).slideDown("slow"); 
} 

另一个函数showViaLink(),简单的说是用一个数组处理当用户点击导航菜单时,链接对应的模块。即当用户不使用键盘按键操作时还可以使用常规的鼠标点击方法来导航。

function showViaLink(array){ 
    array.each(function(i){ 
        $(this).click(function(){ 
            var target = $(this).attr("href"); 
            $(".box").css("display","none"); 
            $(target).slideDown("slow"); 
        }); 
    }); 
} 

最后,当页面加载的时候,jQuery要处理以下事情:

1、除了首页#home模块显示外,其他导航对应的模块都要先隐藏。

2、调用showViaLink()函数,相应点击导航链接。

3、侦听用户按键操作,调用showViaKeypress()函数,完成切换导航功能。

$(function(){ 
    $(".box").css("display","none"); 
    $("#home").css("display","block"); 
 
    showViaLink($("#nav ul li a")); 
 
    // listens for any navigation keypress activity 
    $(document).keypress(function(e){ 
        switch(e.which){ 
            // user presses the "a" 
            case 97: 
                showViaKeypress("#home"); 
                break;     
 
            // user presses the "s" key 
            case 115: 
                showViaKeypress("#about"); 
                break; 
 
            // user presses the "d" key 
            case 100:     
                showViaKeypress("#product"); 
                break; 
 
            // user presses the "f" key 
            case 102: 
                showViaKeypress("#service"); 
                break; 
 
            // user presses the "g" key 
            case 103: 
               showViaKeypress("#blog"); 
        } 
    }); 
}); 

注意使用ASCII值,侦听到用户按下的键值,如小写的“a”对应的ASCII值是“97”,关于ASCII对应表请查看官网:http://www.asciitable.com/

声明:本文为原创文章,helloweba.com和作者拥有版权,如需转载,请注明来源于helloweba.com并保留原文链接,否则视为侵权。
分享到:
评论

相关推荐

    jquery支持键盘左右按键切换的选项卡导航菜单代码并可隐藏.zip

    在这个“jquery支持键盘左右按键切换的选项卡导航菜单代码并可隐藏”的项目中,我们主要关注的是使用jQuery来实现一个功能丰富的选项卡导航菜单,其中包括通过键盘的左右按键进行切换,并且具有隐藏显示的特性。...

    jQuery键盘按键按钮响应事件代码.zip

    本资源"jQuery键盘按键按钮响应事件代码.zip"正是一个关于如何利用jQuery来监听并处理键盘按键事件的示例代码。它允许用户在不直接点击按钮的情况下,通过键盘输入触发与按钮点击相同的行为,提升了用户体验。 首先...

    jquery键盘导航插件

    "jQuery键盘导航插件"就是针对这一需求而设计的工具,它允许用户通过键盘的上下左右按键来操控页面上的焦点元素,提升网页操作的便捷性。这个插件尤其适用于那些需要大量用户输入或交互的界面,如表单填写、游戏控制...

    jquery 监听 键盘 事件

    例如,要监听页面上所有元素的键盘按键事件,可以这样写: ```javascript $(document).on('keydown', function(event) { console.log('Keycode:', event.keyCode); }); ``` 在这个例子中,`event.keyCode`返回的...

    jquery.hotkeys插件键盘按键监听事件代码.zip

    《jQuery.hotkeys插件:深入理解键盘按键监听事件代码》 在Web开发中,与用户交互是必不可少的一环,而键盘事件的监听则是提升用户体验的关键因素之一。jQuery.hotkeys插件正是为此目的而设计,它扩展了jQuery库,...

    键盘精灵for JQuery

    "键盘精灵for JQuery"是一个基于JQuery库的插件,旨在增强网页中输入框的交互体验,通过自动完成功能提供用户友好的输入辅助。这个插件可以帮助开发者为他们的网站或应用构建高效的搜索框或者表单输入,提升用户体验...

    jquery鼠标键盘按键满屏切换特效.zip

    在网页设计和开发中,交互性和用户体验是至关重要的元素,而“jQuery鼠标键盘按键满屏切换特效”正是为了提升这些体验而设计的一种JavaScript技术应用。这个特效使得用户可以通过鼠标滚轮滚动或键盘按键来实现全屏...

    jquery实现的支持键盘方向按键和鼠标拖动切换的全屏相册文字广告特效源码.zip

    通过键盘方向按键和鼠标拖动操作,用户可以轻松浏览相册中的图片,同时配合文字广告,增强宣传效果。 在jQuery库的基础上,这个源码实现了以下关键功能: 1. **全屏展示**:相册以全屏模式呈现,最大化利用屏幕...

    jquery.hotkeys键盘事件处理插件DEMo

    这个插件由John Resig创建,是jQuery库的一个扩展,极大地丰富了键盘交互的可能性,尤其在网页应用和游戏开发中广泛应用。 一、jQuery.hotkeys基本用法 1. 引入资源:首先,你需要引入jQuery库(这里提供了jQuery-...

    jquery键盘左右键分页效果.zip

    在本项目中,我们主要探讨的是使用jQuery库实现的一种创新的网页交互效果——通过键盘的左右按键进行分页浏览。这种效果使得用户无需使用鼠标,只需利用键盘即可方便地导航到前后页面,提升了用户体验,特别是在处理...

    jquery文章或者内容选项卡切换,支持按键左右切换.zip

    本项目“jquery文章或者内容选项卡切换,支持按键左右切换”就是利用jQuery来创建一个功能丰富的选项卡切换功能,不仅可以通过鼠标点击进行切换,还特别加入了键盘左右键导航的支持,增强了用户操作的便利性。...

    jQuery键盘控制焦点图

    "jQuery键盘控制焦点图"是一个非常实用的特效,它允许用户通过键盘按键来切换页面上的焦点图片,增强了用户的参与度和浏览体验。下面我们将深入探讨这个jQuery特效的核心原理、实现方法以及其在实际应用中的价值。 ...

    jquery按键渐变显示tab标签

    本主题将深入探讨如何使用jQuery实现按键渐变显示的tab标签功能,以及与之相关的jQuery导航栏和特效。 首先,让我们了解什么是tab标签。Tab标签是一种常见的网页界面设计元素,用于组织和展示多部分内容。用户可以...

    分享一个jQuery实现键盘操作特效(主要是上移下移)

    标题中的“jQuery实现键盘操作特效(主要是上移下移)”指的是使用JavaScript库jQuery来创建一个功能,使得用户可以通过键盘的上下箭头键来上下移动页面上的元素,比如列表项或者焦点区域。这个功能常见于各种需要...

    单页滚动,键盘按键满屏切换

    单页滚动(Single Page Scroll)是一种常见的网页设计技术,它将整个网站内容分布在单个页面的不同部分,用户可以通过点击导航链接或使用键盘按键在页面之间平滑切换,提供了一种流畅且直观的浏览体验。这种设计模式...

    唯美可按键打开网址导航 v1.0

    通过模拟按键,使得用户在使用电脑时能感受到如同操作实体键盘般的直观与便捷。 在【描述】中提到,该软件使用HTML进行开发。HTML(HyperText Markup Language)是构建网页的基础语言,用于定义网页的结构和内容。...

    jquery鼠标键盘按键满屏切换特效特效代码

    【jQuery鼠标键盘按键满屏切换特效】是一种网页交互设计,通过结合jQuery库,实现用户通过鼠标滚轮滚动或键盘按键来触发页面元素的全屏切换效果。这种特效为用户提供了一种直观且富有动态感的浏览体验,尤其适用于...

Global site tag (gtag.js) - Google Analytics