Javascript 如何使用JQuery将变量类名传递给我的对象函数?

Javascript 如何使用JQuery将变量类名传递给我的对象函数?,javascript,jquery,Javascript,Jquery,我是面向对象编程的新手。我试图将元素类作为参数传递给函数。我知道我错过了一些东西…请参见下面的代码: var n = new Object(); n.mousePosition = function(class, y){ $(document).mousemove(function(e){ if(e.pageY < y){ $(class).slideDown(200); } if(e.pageY > y){ $(class).slid

我是面向对象编程的新手。我试图将元素类作为参数传递给函数。我知道我错过了一些东西…请参见下面的代码:

var n = new Object();

n.mousePosition = function(class, y){   
    $(document).mousemove(function(e){
        if(e.pageY < y){ $(class).slideDown(200); }
        if(e.pageY > y){ $(class).slideUp(200); }
    });
}
n.mousePosition('.nav', 100);
var n=新对象();
n、 mousePosition=函数(类,y){
$(文档).mousemove(函数(e){
如果(e.pageYy){$(class).slideUp(200);}
});
}
n、 鼠标位置('.nav',100);
.nav
是元素类名,我试图将其作为
参数传递给我的函数,
$(类)。向下滑动…
不会拾取它


任何帮助都将不胜感激,谢谢

是一个保留字,请在其前面加上其他内容以避免该问题,即<代码>myClass

此外,您不需要在
前面加上。将其作为参数传入时

n.mousePosition('nav', 100);

类是JavaScript中的保留关键字。使用不同的名称,例如className作为参数名。

请注意,
class
是一个保留字:

function t(class) }
    console.log(class);
}

t("test")
结果(Firefox 8.0):

SyntaxError:类是保留标识符

尝试重命名为
className
(或类似名称)


我给出的更一般的建议是,通过在Firebug或JSFIDLE中运行代码片段,或者在其他一些可能暴露错误的环境中进行调试,您可以很容易地发现这个错误。

类在JavaScript中是一个保留字。不能将类用作变量名。对于其他保留字,您可以访问:

class
是保留关键字,请使用其他内容,例如
klass

var n = new Object();

n.mousePosition = function(klass, y){   
    $(document).mousemove(function(e){
        if(e.pageY < y){ $(klass).slideDown(200); }
        if(e.pageY > y){ $(klass).slideUp(200); }
    });
}
n.mousePosition('.nav', 100);
var n=新对象();
n、 鼠标位置=函数(klass,y){
$(文档).mousemove(函数(e){
如果(e.pageYy){$(klass).slideUp(200);}
});
}
n、 鼠标位置('.nav',100);

请参阅JSFIDLE示例的实际操作

是JavaScript中的一个,如果使用不同的变量名(
elemClass
,例如),会发生什么情况?@DavidThomas感谢一万亿,这很有效,不用担心,这也是下面几个答案的中心主题。因此,如果解决了,您应该接受其中一个=),但他需要在函数中添加一个点(.),最好是传递
.nav
,因为稍后可以将它更改为其他选择器+1作为保留字,-1,因为正在使用jQuery,因此,是的,他确实需要在类名前面加上
@AaronMcIver前缀,谢谢您的输入。戴维托马斯的评论起了作用