【问题标题】:jquery addClass to div selected by attributejquery addClass到属性选择的div
【发布时间】:2015-08-04 09:29:24
【问题描述】:

我有一页手风琴。从另一个页面我想链接到手风琴页面并通过将“活动”添加到该项目的 div 类来直接打开特定的手风琴项目。使用 window.location.hash 选择正确的 div。

HTML 手风琴页面:

<div id="accordion_sp1_id118" class="sp-accordion sp-accordion-style3 ">
 <div class="sp-accordion-item">
  <div id="#78" class="toggler">
   <span>My accordion header 1</span>
  </div>
  <div class="sp-accordion-container" style="display: none;">
   <div class="sp-accordion-inner">
    <p>Content panel accordion 1</p>
   </div>
  </div>
 </div>
<div class="sp-accordion-item">
 <div id="#99" class="toggler">
  <span>My accordion header 2</span>
 </div>
 <div class="sp-accordion-container" style="display: none;">
  <div class="sp-accordion-inner">
   <p>Content panel accordion 2</p>
  </div>
 </div>
</div>
<div class="sp-accordion-item">
 <div id="#92" class="toggler">
  <span>My accordion header 3</span>
 </div>
 <div class="sp-accordion-container" style="display: none;">
  <div class="sp-accordion-inner">
   <p>Content panel accordion 3</p>
  </div>
 </div>
</div>
</div>

jQuery 脚本

<script type="text/javascript">
  jQuery(document).ready(function($){
  // YOU CAN NOW USE $ AS YOUR jQUERY OBJECT.
  $('div[id="'+location.hash+'"]').addClass('active');
  });
</script>

手风琴页面的 url 包含例如 '#92' 以链接到 id 为 '#92' 的 div。这个 div 应该被添加到它的类中。 但是脚本似乎不起作用:错误在哪里??

请帮忙,卡在这上面太久了。我对jquery知之甚少!

【问题讨论】:

    标签: jquery accordion


    【解决方案1】:

    问题可能在于哈希值可能包含前导 #(我认为它在旧版浏览器中并不统一,因此我们需要处理这两种情况)

    $('div[id="'+location.hash.replace(/^#/, '')+'"]').addClass('active');
    

    或使用 id 选择器

    $(location.hash.replace(/^([^#])/, '#$1')).addClass('active');
    

    【讨论】:

      【解决方案2】:

      根据文档激活手风琴使用以下

      // 吸气剂 => var active = $( ".selector" ).accordion( "option", "active" );

      // 二传手 => $( ".selector" ).accordion( "option", "active", 2 );

      http://api.jqueryui.com/accordion/#option-active

      希望这会有所帮助。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2014-11-30
        • 1970-01-01
        • 2020-05-07
        • 1970-01-01
        • 2018-09-22
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多