我在一个页面上有几个可滚动的菜单。有一个jQuery函数,在我在.js文件中输入(硬编码)之后,以“菜单每个菜单”方式处理所有这些菜单:
$(function(){
Scrollable(".menu_wrapper1");
Scrollable(".menu_wrapper2");
..and so on, all up to...
Scrollable(".menu_wrapper9");
HTML很简单......
<div class="menu_wrapper1">Menu data</div>
<div class="menu_wrapper2">Menu data 2</div>
and so on, up to 9 again.
无论如何,在不久的将来,这些菜单有可能在一个页面上超过9个,或者在最后有不同的数字(例如"menu_wrapper17"
),所以任何机会都可以获得这些不同数量的菜单。要被jQuery本身识别并应用于此函数的类吗?
像Scrollable(".menu_wrapper[*]");
或类似的东西,我想这样的功能可以应用于任何数字吗?
THX!
编辑:请注意,每个班级都有自己的功能控制。
答案 0 :(得分:3)
一种方法是添加另一个类,例如scrollable_wrapper
,然后选择:
<div class="scrollable_wrapper menu_wrapper2">...</div>
Scrollable('.scrollable_wrapper');
答案 1 :(得分:2)
试试这个
$("div[class^='menu_wrapper']").each(function () {
Scrollable("."+$(this).attr('class'));
});
这将得到每个div,其classname以'menuwarpper'开头,并以其类名作为参数调用Scrollable()。
希望这有帮助,谢谢
答案 2 :(得分:0)
这里有很多解决方案:
1)包装所有menu_wrapper:
<div id="big_menu_wrapper ">
<div class="menu_wrapper1">Menu data</div>
<div class="menu_wrapper2">Menu data 2</div>
</div>
并选择Scrollable("#big_menu_wrapper > div")
2)将相同的类添加到所有menu_wrapper:
<div class="menu_wrapper menu_wrapper1">Menu data</div>
<div class="menu_wrapper menu_wrapper2">Menu data 2</div>
并选择Scrollable(".menu_wrapper")
3)重构你的javascript函数