【问题标题】:Activating accordion panels from external anchors/links从外部锚点/链接激活手风琴面板
【发布时间】:2012-06-14 14:55:50
【问题描述】:

一段时间以来,我一直在尝试从外部链接激活 jQuery UI 手风琴面板。

我在页面中有一个手风琴小部件所在的链接,我想使用这些链接来激活手风琴面板。这些链接不在手风琴小部件的标记内。

这些链接正在操纵选项卡的交互性,并用于在 AJAX 内容中弹出。 在应用程序的某些状态下,我的手风琴选项对象的 { navigation: true } 部分被遗忘了。 我相信这是因为我正在启动 window.reload.location() 以返回应用程序的某些状态。

下面的函数显示了这一点。我认为我需要的是一个基于散列的自定义导航过滤器,或者可以在此函数中工作的位置,以根据用户所在的 URL 激活手风琴面板。 我在脚本的开头确实将导航设置为 true,稍后会出现以下脚本...

// "Back to xxxtabTitle" button used to revert tabs to their default state after    
// photoNav pop-in AJAX content has been loaded
$('#mainContent').on('click', '.backToInitTab', function(event) {
    event.preventDefault();
    window.location.reload();

  // accordion navigation filter to open correct accordion panel on click event
    // Can you help with this? I'd greatly appreciate it.
  // /accordion navigation filter
    });

// /"Back to xxxtabTitle" button

对于这个问题的任何帮助或见解将不胜感激! 提前致谢。 真挚地, 迪克·柯克兰

【问题讨论】:

    标签: javascript jquery-ui jquery-ui-accordion


    【解决方案1】:

    答案排序:我不得不放弃使用带有 jQ​​uery UI 手风琴的导航选项,因为我在网站上使用的设计包含通过 window.location.reload 在页面和/或 UI 选项卡面板上执行重新加载的按钮();.如果您在站点中重新加载内容,您可能会看到导航通过打开所需的手风琴面板开始生效,但随后会看到面板收缩。我相信这是因为通常情况下,来自手风琴面板本身的点击会指示 UI 手风琴组件如何对哈希历史做出反应。我们关闭了导航,并手动实例化了哪些面板应该在最少的页面上打开。这允许 AJAX 功能(选项卡式内容)仍然打开手风琴面板,并且看到的唯一动画是总页面重新加载时。

    【讨论】:

      【解决方案2】:

      $( "#accordion" ).accordion({ active: 2 });

      参考this site

      【讨论】:

      • 这个答案也很有帮助。我只能标记一个,您的代码以及其他内容的完整解释都在上面。谢谢!
      猜你喜欢
      • 1970-01-01
      • 2013-05-19
      • 2018-10-31
      • 2013-02-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多