如何使用jquery更改左值

use*_*181 0 html css jquery

我有两节课:

offcanvas-menu-selectorsub-navigation.默认情况下,左边的值sub-navigationleft:-250px.我想left:0px在点击时更改此值offcanvas-menu-selector

我尝试了以下方法:

$('.offcanvas-menu-selector').onclick(function(){
    $('.sub-navigation').css({left: 0, position:'absolute'});
});
Run Code Online (Sandbox Code Playgroud)

但它没有用.给我一个错误: Uncaught TypeError: undefined is not a functionjquery.js:33 (anonymous function)jquery.min.js:2 jjquery.min.js:2 k.fireWithjquery.min.js:2 m.extend.readyjquery.min.js:2 J

我怎样才能做到这一点?

小智 5

$('.offcanvas-menu-selector').click(function(){
    $('.sub-navigation').css({left: 0, position:'absolute'});
});
Run Code Online (Sandbox Code Playgroud)

说明

onclick在jQuery中不存在.这是click你要追求的.

http://api.jquery.com/click/

编辑

虽然这现在有效,并且您使用javascript/jQuery成功设置了CSS属性,但我不推荐它.我更喜欢将函数(js),样式(css)和标记(html)尽可能分开.

话虽如此,我更喜欢这种方法:

CSS:

.myClass
{
   left: 0;
   position: absolute;
}
Run Code Online (Sandbox Code Playgroud)

JS:

$('.offcanvas-menu-selector').click(function(){
    $('.sub-navigation').toggleClass('myClass');
});
Run Code Online (Sandbox Code Playgroud)

说明

您现在只是使用jQuery来切换类,但在样式表中包含此类的所有属性.更整洁.在线/在jQuery中定义样式很可能会让你头疼.此方法还解决了您在评论中提出的问题.