我正在尝试将我网站上的一些Javascript整合到一个在整个网站上共享的常见.js文件中,而不是每次都要在页面上的<head>
标记中写出所有内容。
我遇到的一个问题是我在每个页面上有多个页面,每个页面都有不同数量的JQuery UI手风琴小部件。例如,一个页面将有两个手风琴,另一个将有7个,另一个将有5个。
现在,我可以让手风琴方法初始化我可能需要的手风琴最大数量的手风琴,并且不使用生成的额外ID,但这似乎真的很差,编码事物的低效方式。如果有办法我可以在Javascript中使用循环来查看页面上有多少个手风琴ID,并且只创建我需要的手风琴数量?例如,如果我有:
<div id="acc1">
<!-- the accordion content here-->
</div>
<div id="acc2">
<!-- the accordion content here-->
</div>
<div id="acc3">
<!-- the accordion content here-->
</div>
<div id="acc4">
<!-- the accordion content here-->
</div>
然后我在document.ready事件中的accordion方法应该知道自动生成4个手风琴:
$("#acc1, #acc2, #acc3, #acc4").accordion();
如果可能的话,最有效的方法是,我可以通过循环来做到这一点吗?
答案 0 :(得分:3)
答案 1 :(得分:2)
使用当前标记,您可以:
$( "div[id^='acc']" ).accordion();