Javascript 站点导航捕获事件并触发正确的操作
我以前大概也接触过jQuery和javascript,但都很简单,比如向上滑动元素、添加/删除类等 我以前从未处理过事件和对象。 现在我有了一个准备就绪的内联网应用程序,它完全按照我的方式编程。也就是说,要显示/隐藏的很多全局函数和变量(如果不是全部的话)通常控制页面元素。所有这些都是不用鼠标控制的,只有按键。 看到这一点,在这个过程中我有点害怕,于是我给自己买了一份Stoyan Stefanov的面向对象JavaScript 我现在的问题是我知道我需要处理对象、原型和事件。。。 我想我自己理解这些概念,但我完全不知道如何开始 我遇到的另一个问题是,根据可见或活动元素,相同的键应该触发不同的操作。上/右/下/左应控制菜单,但当加载内容并到达菜单时,相同的键必须触发完全不同的事情。我想我需要在这里使用事件名称空间,对吗 由于触发事件的不是鼠标,因此我必须在非常高的级别上捕获它们,并根据活动和可见元素确定必须执行的操作。因为我不知道event.target是哪个元素触发了事件Javascript 站点导航捕获事件并触发正确的操作,javascript,jquery,web-applications,Javascript,Jquery,Web Applications,我以前大概也接触过jQuery和javascript,但都很简单,比如向上滑动元素、添加/删除类等 我以前从未处理过事件和对象。 现在我有了一个准备就绪的内联网应用程序,它完全按照我的方式编程。也就是说,要显示/隐藏的很多全局函数和变量(如果不是全部的话)通常控制页面元素。所有这些都是不用鼠标控制的,只有按键。 看到这一点,在这个过程中我有点害怕,于是我给自己买了一份Stoyan Stefanov的面向对象JavaScript 我现在的问题是我知道我需要处理对象、原型和事件。。。 我想我自己理解
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需要您了解状态并相应地响应用户输入。您还发现了链式调用的乐趣和严重缺陷,这就是为什么不推荐链式调用的原因。工作系统工作正常。毫无疑问。但它可以为每个动作应用一个键。因此,菜单的导航是保留给数字的,其余的操作是使用各种不同的键执行的,而不是重用它们。如果我能找到一种方法,将相同的键重新用于类似的操作,那么整个过程将更易于使用。这样我就不会在需要添加新内容时耗尽密钥