Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/73.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 站点导航捕获事件并触发正确的操作_Javascript_Jquery_Web Applications - Fatal编程技术网

Javascript 站点导航捕获事件并触发正确的操作

Javascript 站点导航捕获事件并触发正确的操作,javascript,jquery,web-applications,Javascript,Jquery,Web Applications,我以前大概也接触过jQuery和javascript,但都很简单,比如向上滑动元素、添加/删除类等 我以前从未处理过事件和对象。 现在我有了一个准备就绪的内联网应用程序,它完全按照我的方式编程。也就是说,要显示/隐藏的很多全局函数和变量(如果不是全部的话)通常控制页面元素。所有这些都是不用鼠标控制的,只有按键。 看到这一点,在这个过程中我有点害怕,于是我给自己买了一份Stoyan Stefanov的面向对象JavaScript 我现在的问题是我知道我需要处理对象、原型和事件。。。 我想我自己理解

我以前大概也接触过jQuery和javascript,但都很简单,比如向上滑动元素、添加/删除类等

我以前从未处理过事件和对象。 现在我有了一个准备就绪的内联网应用程序,它完全按照我的方式编程。也就是说,要显示/隐藏的很多全局函数和变量(如果不是全部的话)通常控制页面元素。所有这些都是不用鼠标控制的,只有按键。 看到这一点,在这个过程中我有点害怕,于是我给自己买了一份Stoyan Stefanov的面向对象JavaScript

我现在的问题是我知道我需要处理对象、原型和事件。。。 我想我自己理解这些概念,但我完全不知道如何开始

我遇到的另一个问题是,根据可见或活动元素,相同的键应该触发不同的操作。上/右/下/左应控制菜单,但当加载内容并到达菜单时,相同的键必须触发完全不同的事情。我想我需要在这里使用事件名称空间,对吗

由于触发事件的不是鼠标,因此我必须在非常高的级别上捕获它们,并根据活动和可见元素确定必须执行的操作。因为我不知道event.target是哪个元素触发了事件

 for example: if menu1 is visible and "right" was pressed
              either open sub-menu or load content.
我做了一些尝试,但未能摆脱让一切留在全球的局面:

jQuery'body'。在'ok.menu.rc right.menu.rc'上,函数e{ var cur=jQuery'nav.active a.active'。removeClass'active'。addClass'selected'; jQuery'nav.active a:not.selected'。addClass'disabled'。parent.removeClass'active'; //cur.parent.removeClass'active'; 获取_entrycur.attr'data-name'+'-'; //jQuery'body'.off'.menu';//测试名称空间 jQuery'menu1wrap nav'。removeAttr'class'。addClass'active'; }; 而且仍然远没有任何形式的重用能力。可能看起来不是这样,但我已经做了几次,至少两次不同的尝试,但很快就失败了。 尤其是在尝试将所有东西放入对象时。我不知道如何将html元素与javascript对象的实例链接起来


你会如何对付这头野兽?

如果你有一个工作系统,为什么要重构它?如果你有一个明确的目标,方向应该是明确的。正如您所做的那样,重新编写自定义行为的UI需要您了解状态并相应地响应用户输入。您还发现了链式调用的乐趣和严重缺陷,这就是为什么不推荐链式调用的原因。工作系统工作正常。毫无疑问。但它可以为每个动作应用一个键。因此,菜单的导航是保留给数字的,其余的操作是使用各种不同的键执行的,而不是重用它们。如果我能找到一种方法,将相同的键重新用于类似的操作,那么整个过程将更易于使用。这样我就不会在需要添加新内容时耗尽密钥