首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >jquery中的垂直折叠函数命名问题

jquery中的垂直折叠函数命名问题
EN

Stack Overflow用户
提问于 2013-01-23 21:28:13
回答 3查看 467关注 0票数 0

我在我的website.One上使用了两个accordion,一个是JqueryUI,另一个是:

http://www.adipalaz.com/experiments/jquery/nested_accordion.html

现在的问题是,它们都使用.accordion来初始化accordion。在这种情况下,只有一个可以工作。

有没有办法解决这个函数命名问题?

为了初始化Jquery-UI,我使用以下命令:

代码语言:javascript
复制
$( ".jquery-ui-accordion" ).accordion();    

为了初始化另一个(嵌套的accordion),我使用下面的代码:

代码语言:javascript
复制
$("html").addClass("js");
$.fn.accordion.defaults.container = false; 
$(function() {
  $("#acc3").accordion({initShow : "#current"});
  $("#acc1").accordion({
      el: ".h", 
      head: "h4, h5", 
      next: "div", 
      initShow : "div.outer:eq(1)"
  });
  $("#acc2").accordion({
      obj: "div", 
      wrapper: "div", 
      el: ".h", 
      head: "h4, h5", 
      next: "div", 
      showMethod: "slideFadeDown",
      hideMethod: "slideFadeUp",
      initShow : "div.shown",
      elToWrap: "sup, img"
    });
  $("html").removeClass("js");
});

}); 

请注意,它们都在使用.accordion()函数。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2013-01-23 21:47:36

将此代码放在jQuery UIs include之后,其他accordions javascript include之前:

代码语言:javascript
复制
jQuery.fn.myCustomAccordion = jQuery.fn.accordion;
delete $.fn.accordion;

然后你可以同时使用两种手风琴,例如:

代码语言:javascript
复制
// jQuery accordion
$( ".jquery-ui-accordion" ).myCustomAccordion(); 

// "Other accordion"
$("#acc3").accordion({initShow : "#current"});
...
票数 2
EN

Stack Overflow用户

发布于 2013-01-23 21:32:44

如果它们都被命名为.accordion,那么您说明CSS类名称被用作选择器,对吗?因此,我建议在每个类名旁边使用唯一的id来区分这两个.accordion。但是,如果没有代码示例,就很难进一步提供帮助。

票数 1
EN

Stack Overflow用户

发布于 2013-01-23 21:36:30

如果您指的是函数名称,您可以简单地卷起袖子,在其中一个源代码文件中重命名函数。

或者你不能使用两个插件来做同样的事情。

更新:我对你现在想要做什么有了更好的想法。我使用jquery.casplsible-menus.js做了完全相同的事情。它使用列表而不是div,但它很容易上手。

http://tommcfarlin.com/collapsible-menus-for-jquery-1-1/

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14480875

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档