我在网上发现了一些代码来创建简单的标签。它适用于类的每个(单个)实例。 但是,如果我有两个不同的类,我需要它为两个类做同样的事情呢?
我目前正在复制该功能。我知道,它胜过构建函数的目的。因此,新手问题:我如何为多个课程重复使用该功能的代码。
谢谢!
$('.class1').each(function(){
// code for making tabs work
//
});
$('.class2').each(function(){
// code for making tabs work
//
});
答案 0 :(得分:0)
您可以声明一个使标签在其他地方工作的功能,例如:
function makeTabsWork()
{
// code for making tabs work
}
然后将该函数分配给各个类,如下所示:
$('.class1').each(makeTabsWork);
$('.class2').each(makeTabsWork);
然而,更有效的方法是:
$('.class1, .class2').each(makeTabsWork);
但是,由于您希望通过JavaScript激活类的两个不同实例,因此您只需指定一个公共属性,例如:
<div class="class1" rel="nav">
和
<div class="class2" rel="nav">
然后只调用一次这样的函数:
$('div[rel=nav]').each(makeTabsWork);
答案 1 :(得分:0)
您可以在javascript的开头定义一个函数,如下所示:
<script type="text/javascript>
function foo() {
}
</script>
之后你可以这样称呼:
$(".class1").each(foo);
这只是 MANY 方法之一。我强烈建议您阅读更多有关基本Javascript语法的内容,以找到解决问题的其他方法!
可能有助于is here的一个教程。如果其他人对教程有更多建议,请随时编辑我的答案或在评论中提出建议!
各种方法
// define a global function
function globalFoo() { };
// Define a global function as a variable:
var globalFooVar = function () { };
// or in run:
$(function () {
// define your function inside of run (scoped definition)
function scopedFoo() { };
// or a scoped variable
var scopedFooVar = function () { };
// but no matter how you define it you basically use it the same way:
$("selector").each(globalFoo);
$("selector").each(globalFooVar);
$("selector").each(scopedFoo);
$("selector").each(scopedFooVar);
});