Jquery到javascript的小设备,轻代码需要

Jquery到javascript的小设备,轻代码需要,javascript,jquery,Javascript,Jquery,好吧,我是javascript新手,但我可以很好地处理jquery。。。但是jquery在一个小型移动网络上的体验实在是太重了。。。有些时候,它甚至太傻了 所以我有一个代码,它会弹出我的菜单栏,我想知道是否有任何轻松的方法来实现这个功能 $(function() { $('div.menu').hide(); $("img#menu").click(function () { $("div#menu").toggle("slide", {direction:

好吧,我是javascript新手,但我可以很好地处理jquery。。。但是jquery在一个小型移动网络上的体验实在是太重了。。。有些时候,它甚至太傻了

所以我有一个代码,它会弹出我的菜单栏,我想知道是否有任何轻松的方法来实现这个功能

$(function() {
    $('div.menu').hide();
    $("img#menu").click(function () {
          $("div#menu").toggle("slide", {direction: "right"}, 500);
    });
});

您可以使用纯CSS模拟菜单,而不使用任何JavaScript,只需编写一个CSS选择器,将鼠标悬停在您希望通过它显示菜单的项目上,但这种方式无法产生幻灯片效果。要创建这种效果,您应该在jQuery中阅读它们的代码,并在JS中实现它们。
其他事情也可以使用jquery的源代码来处理,但是对于选择器(比如'div.menu'),您可以使用这个库中的Sizzle,它非常小(4k压缩并缩小),它的选择器引擎可以做jquery可以做的任何事情(实际上jquery内部使用Sizzle)

您可以使用纯CSS模拟菜单,而不需要任何JavaScript,只需编写一个css选择器,用于将鼠标悬停在您希望通过它显示菜单的项目上,但这种方式无法产生类似幻灯片的效果。要创建这种效果,您应该在jQuery中阅读它们的代码,并在JS中实现它们。
其他事情也可以使用jquery的源代码来处理,但是对于选择器(比如'div.menu'),您可以使用这个库中的Sizzle非常小(4k压缩和缩小),它的选择器引擎可以做jquery可以做的任何事情(实际上jquery内部使用Sizzle)

查看您的代码,我要指出以下几点(参见注释):

在本机代码上使用CSS而不是JavaScript,而不是解释JavaScript

还有一个诀窍是,许多移动设备被视为3D CSS转换(因为3D用于执行手机自己的UI使用的翻转和滑动功能)。因此,使用3D过渡将从引擎中获得更多空间

下面是使用CSS的代码片段:

下面是对CSS转换的一个很好的介绍:


看看你的代码,我想指出以下几点(见注释):

在本机代码上使用CSS而不是JavaScript,而不是解释JavaScript

还有一个诀窍是,许多移动设备被视为3D CSS转换(因为3D用于执行手机自己的UI使用的翻转和滑动功能)。因此,使用3D过渡将从引擎中获得更多空间

下面是使用CSS的代码片段:

下面是对CSS转换的一个很好的介绍:



“有什么轻松的方式获得这个吗?”什么是轻松的方式,得到什么?你到底在问什么?您想要没有jQuery的动画、隐藏/显示和事件处理程序吗?如果是这样,我建议CSS3动画、addEventListener和直接设置样式值。或者你只是想在没有jQuery的情况下在手机上隐藏/显示它?我想用一个动画来隐藏和显示它,使div在没有jQuery的情况下从右向左点击,因为它对于我必须测试的手机来说实在太重了。根据你的代码,你有一个图像和一个具有相同ID的div…@Kolink-看起来像一个给我上课?您是否至少尝试过在没有jQuery UI的情况下这样做,我假设您正在使用jQuery UI?“有没有轻松的方式来获取此信息?”什么是轻松的方式,获取什么?您到底在问什么?您想要没有jQuery的动画、隐藏/显示和事件处理程序吗?如果是这样,我建议CSS3动画、addEventListener和直接设置样式值。或者你只是想在没有jQuery的情况下在手机上隐藏/显示它?我想用一个动画来隐藏和显示它,使div在没有jQuery的情况下从右向左点击,因为它对于我必须测试的手机来说实在太重了。根据你的代码,你有一个图像和一个具有相同ID的div…@Kolink-看起来像一个给我上课?你是否至少尝试过在没有jQuery UI的情况下这样做,我假设你正在使用jQuery UI?在智能手机上鼠标不是很难吗?在智能手机上鼠标不是很难吗?它不是从右边出来的,而是一个开始。所以我混合了纯javascript和动画css!当我在我的主要问题的第一句话中陈述时,我非常了解这一切=/+1用于CSS技巧,但它只适用于web工具包,你知道它对应于Geko或Tradient(不是很重要)。@BigBoss-Gecko也是如此:IE9目前在Windows Phone AFAIK上使用,不支持CSS转换。我们使用JS转换库作为IE9的后备方案。根据这一点,IE10(Trident 6)将支持CSS转换:非常感谢,IE在支持新功能方面总是有点慢,但非常感谢!它不是从右边出来的,而是一个开始。所以我混合了纯javascript和动画css!当我在我的主要问题的第一句话中陈述时,我非常了解这一切=/+1用于CSS技巧,但它只适用于web工具包,你知道它对应于Geko或Tradient(不是很重要)。@BigBoss-Gecko也是如此:IE9目前在Windows Phone AFAIK上使用,不支持CSS转换。我们使用JS转换库作为IE9的后备方案。根据这一点,IE10(Trident 6)将支持CSS转换:非常感谢,IE在支持新功能方面总是有点慢,但非常感谢!
$(function() {
    // here you are searching by class name, that is going to eat CPU
    $('div.menu').hide();
    $("img#menu").click(function () {
        // here you are doing a JavaScript animation, eating more of the CPU
        $("div#menu").toggle("slide", {direction: "right"}, 500);
    });
});