Javascript 减少jQuery中的代码重复
我正在创建一系列div动画,这产生了大量重复代码 例如:Javascript 减少jQuery中的代码重复,javascript,jquery,Javascript,Jquery,我正在创建一系列div动画,这产生了大量重复代码 例如: $('#elem a:eq(0)').addClass("hiddenCSS").viewportChecker({ classToRemove: 'hiddenCSS', classToAdd: 'animated bounceInLeft', offset: 200 }); $('#elem a:eq(1)').addClass("hiddenCSS").viewportChecker({ class
$('#elem a:eq(0)').addClass("hiddenCSS").viewportChecker({
classToRemove: 'hiddenCSS',
classToAdd: 'animated bounceInLeft',
offset: 200
});
$('#elem a:eq(1)').addClass("hiddenCSS").viewportChecker({
classToRemove: 'hiddenCSS',
classToAdd: 'animated bounceInUp',
offset: 400
});
这只是两个元素,但如果我有几十个呢?我的代码很快就不可用了
我想创建一个函数使事情变得更简单,但它不起作用。现在我想知道我是否应该创建一个具有特定方法的类。
这是我尝试过的,不起作用,而且没有定义:
function animation(elem,animation,offset) {
$(elem).addClass("hiddenCSS").viewportChecker({
classToRemove: 'hiddenCSS',
classToAdd: 'animated' + animation,
offset: offset
});
}
animation('#elem a:eq(1)', 'bounceIn', 200);
您的代码应该与准备好的文档一起工作。在执行
动画(…)
您的代码应该与准备好的文档一起工作。在执行
动画(…)
如果在内部定义函数
$(document).ready(function() {
function myFunction() {}
myFunction();
)};
它将不会在全球范围内提供
把它移到外面去
function myFunction() {}
$(document).ready(function() {
myFunction();
)};
如果在内部定义函数
$(document).ready(function() {
function myFunction() {}
myFunction();
)};
它将不会在全球范围内提供
把它移到外面去
function myFunction() {}
$(document).ready(function() {
myFunction();
)};
该代码看起来应该可以工作。控制台说什么?它说“动画未定义”,然后可能有其他输入错误。如果您是对的,我忘记了classToAdd中的空格(
classToAdd:'animated'+''+animation
)。现在动画可以加载,但如果我在控制台中编写,它仍然会说函数没有定义。对不起,我不明白你的意思?如果在控制台中编写,那么代码看起来应该可以工作。控制台说什么?它说“动画未定义”,然后可能有其他输入错误。如果您是对的,我忘记了classToAdd中的空格(classToAdd:'animated'+''+animation
)。现在动画可以加载,但如果我在控制台中编写,它仍然会说函数没有定义。对不起,我不明白你的意思?如果您在控制台中编写它?正如我在与OPYes讨论时评论的那样,在我的评论之后:)nice behavior@mplungjanWhat behavior?我相信我的评论就是答案——不要用文件来包装。准备好了吗?很明显,它已经准备好了。那是孩子们玩的:)我不明白你的意思。您的评论建议将他的调用包装在document.ready中-他的问题是他的所有代码(包括函数声明)都在document.ready中。正如我在与OPYes讨论时评论的那样,在我的评论之后:)nice behavior@mplungjanWhat behavior?我相信我的评论就是答案——不要用文件来包装。准备好了吗?很明显,它已经准备好了。那是孩子们玩的:)我不明白你的意思。您的评论建议将他的调用包装在document.ready中-他的问题是,包括函数声明在内的所有代码都在document.ready中。