【发布时间】:2017-11-17 15:51:54
【问题描述】:
我有一个在不同页面上使用 jquery UI 手风琴的网站。这些手风琴的脚本在每种情况下都在页面上。
我们正在研究所有页面的每日站点打印,因此我们需要在进行站点打印时完全展开这些手风琴(我们将通过检测站点打印机的 userAgent 字符串来做到这一点,因为他们可以发出自定义的)。
站点打印机可以停止在页面上执行 javascript 以保持内容完全展开,但我们也使用 AJAX 脚本来阻止内容加载。
所以我们需要一个脚本来定位页面上的任何 jquery 手风琴并使它们完全展开。我们在所有页面上都有一个 custom.js 文件,因此我们可以在其中放置命令。
我的问题是,是否可以在不知道它们是什么的情况下定位手风琴对象的所有实例?我正在研究将脚本放入 custom.js 文件中的可能性,而不是必须逐页重写所有 JQuery 手风琴调用(并试图让每个向网站添加内容的人也记住每次使用手风琴时都要编写基于 userAgent 的条件扩展)。
【问题讨论】:
-
只要你能找到一个匹配每一页上所有手风琴的选择器,我看不出它不可能的理由。您应该显示一些代码,以便人们能够帮助您。
-
所以我可以手动逐页向我的所有手风琴添加一个类,然后在脚本中定位该类?那行得通吗?因为他们有不同的 ID。
-
是的。没错!
-
您还可以测试每个
$("div")以查看它是否具有手风琴实例。最有可能的是,您将只使用$(".ui-accordion"),因为这个类是在 Accordion 初始化时添加到元素中的。
标签: javascript jquery jquery-ui multiple-instances