首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >打开外接手风琴

打开外接手风琴
EN

Stack Overflow用户
提问于 2012-07-27 08:05:20
回答 3查看 1.3K关注 0票数 1

我试着用外部link..Actually打开手风琴,页面上有三个主要手风琴(关于,结果,联系)

还有一个有项目的菜单(关于,结果,联系)。

我想要的是当我点击关于的菜单项时,它应该打开关于手风琴的

下面是jquery代码

代码语言:javascript
运行
复制
$(function() {

    $( "#accordion" ).accordion({              
        collapsible: true,
        autoHeight: false , 
        active: false,
        navigation:true,       

    }); 

    $(".exlnk").click(function(event){
           window.location.hash=this.hash;
            });         
});

下面是html菜单代码:

代码语言:javascript
运行
复制
    <div id="navmenu" style='z-index:9999;'>
      <ul>
        <li><a href="#anchor_about" class="anchor_about">About</a></li>
        <li><a href="#" >Results</a></li>
       <li><a href="#" class ="anchor_contact">Contact</a></li>
      </ul>
    </div>

下面是用于外部链接的jquery代码

代码语言:javascript
运行
复制
    <script>

     $(document).ready(function(){

     $('a.anchor_about').click(function(){

     $("#accordion").accordion("activate", '<?php echo $_GET['id']; ?>');

 return false;

  });
   });

   </script>

但它不起作用

有人知道同样的事吗?提前感谢

EDIT1

代码语言:javascript
运行
复制
<script>

 $("#navmenu ul").children("li").click(function()
 {
  $("#accordion").accordion("activate", <?php echo (int)$_GET['id']; ?>);
});

EDIT2

下面是手风琴代码

代码语言:javascript
运行
复制
        <div class="demo">                      

            <div id="accordion">                                                       <!--- main accordion 1 demo-->
                <h3><a href="#anchor_home"></a></h3>                            
                    <div id="accordion1" style="margin-bottom:17px;"  >
                        <h1><a href="#" ></a></h1>
                            <div id="content_our_offer" >                              <!--- sub accordion 1 demo-->
                                <?php $page_id=1742;?>                      
                                <?php get_page( $page_id ) ;
                                $page_data = get_page( $page_id );
                                echo '<h3>'. $page_data->post_title .'</h3>';// echo the title
                                echo apply_filters('the_content', $page_data->post_content); ?>              
                            </div>

                    <div style="margin-top:20px;">                                   <!--- sub accordion 2 demo-->
                        <h2  ><a href="#" ></a></h2>    </div>          
                            <div id="content_our_offer" >
                                <?php $page_id=1742;?>                      
                                <?php get_page( $page_id ) ;
                                $page_data = get_page( $page_id );
                                echo '<h3>'. $page_data->post_title .'</h3>';// echo the title
                                echo apply_filters('the_content', $page_data->post_content); ?>              
                            </div>

            </div>


            <div style="margin-top:20px;">
            <h6><a class="exlnk" href="#about" title="About" ></a></h6>   </div>                                              <!--- main accordion 2 demo-->     
                <div id="id_ourresults">
                    <?php
                        $directory = 'our_results'; 
                        try {    
                            // Styling for images

                            foreach ( new DirectoryIterator("../" . $directory) as $item ) {            
                                if ($item->isFile()) {
                                    echo "<div class=\"expand_image\">";
                                    $path = "/" . $directory . "/" . $item;
                                    echo "<img src=\"" . $path . "\" width=861 height=443  />";
                                    echo "</div>";
                                    }
                                }
                            }
                            catch(Exception $e) {
                            echo 'No images found for this player.<br />';
                            }


       ?>




                </div>          
                <div style="margin-top:20px;">


            <h4><a href="#anchor_contact"></a></h4> </div>                                          <!--- main accordion 3 demo-->
                <div id="id_contactus">      
                    <?php $page_id=1791 ;?>
                    <?php get_page( $page_id ) ;
                    $page_data = get_page( $page_id );
                    echo '<h3>'. $page_data->post_title .'</h3>';// echo the title
                    echo apply_filters('the_content', $page_data->post_content); ?>              
                </div>        

            </div>

    </div><!-- End demo -->
EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2012-07-27 08:27:30

代码语言:javascript
运行
复制
$('a.anchor_about').click(function(){

   $("#accordion").accordion("activate", '<?php echo $_GET['id']; ?>');

   return false;

});

我不认为手风琴激活线中的$_GET‘is’会起作用,因为我猜你想要这样的东西

代码语言:javascript
运行
复制
$('a.anchor_about').click(function(){
   var sectionId = $(this).attr("href");
   $("#accordion").accordion("activate", sectionId);

   return false;

});

检查这是否有效-如果有任何错误,请告诉我。

编辑**

另外,我认为要打开手风琴,您需要一个基于index的值,而不是像#someId这样的ID值(它确实适用于选项卡)。索引是以零为基础的,因此手风琴的第一部分可以通过传递零值来激活,第二部分是1,以此类推。

票数 1
EN

Stack Overflow用户

发布于 2012-07-27 08:50:36

根据索引给菜单项命名

代码语言:javascript
运行
复制
<div id="navmenu" style='z-index:9999;'>
    <ul>
        <li><a href="#" name="0">About</a></li>
        <li><a href="#" name="1">Results</a></li>
        <li><a href="#" name="2">Contact</a></li>
    </ul>
</div>

然后用菜单项中给定的索引激活适当的手风琴项目:

代码语言:javascript
运行
复制
$("#navmenu ul").children("li").click(function()
{
    $("#accordion").accordion("activate", $(this).attr("name"));

    // ALSO POSSIBLE (name attribute not needed):
    // Only if the menu items are in the same order as the accordion items
    $("#accordion").accordion("activate", $(this).index());
});

编辑

我只是认为您的代码位于一个不同的文件中,所以这里有一个选项可以将对代码的更改最小化。当您发送一个散列并在一个新页面中获取ID时。手风琴需要一个索引号,而不是ID:手风琴法

代码语言:javascript
运行
复制
<div id="navmenu" style='z-index:9999;'>
    <ul>
        <li><a href="#0">About</a></li>
        <li><a href="#1">Results</a></li>
        <li><a href="#2">Contact</a></li>
    </ul>
</div>
票数 0
EN

Stack Overflow用户

发布于 2014-10-08 07:08:26

代码语言:javascript
运行
复制
$('#accordion').accordion({"active": $(window.location.hash).index()});
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11683825

复制
相关文章

相似问题

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