Simple Toggle(Jquery)无效

时间:2013-10-13 06:18:36

标签: javascript jquery

我有一个span标签;我想为它设置一个切换选项。我试图使用JQuery,但它无法正常工作。

这是我的代码:

                <li class ="span2"><span id="test">Click here</span>
                    <ul class ="dropDown" id="idGraphic" style="display: none;">   
                        <li class ="span1" id ="photoAbout">
                            <?php
                                echo anchor(LINK_GRAPHIC_ABOUT, 'About', array('style' => 'color:white;'));
                            ?>
                        </li>
                        <li class ="span1" id ="photoGallery">
                            <?php                                
                                echo anchor(LINK_GRAPHIC_GALLERY, 'Gallery', array('class' => $hover, 'style' => 'color:white;'));                                                                                                
                            ?>
                        </li>
                    </ul>
                </li>

我的Javascript代码是:

$( "#test" ).click(function() {
  $( "#idGraphic" ).toggle();
});

所以每当我点击带有id = test的span时,它应该显示两个UL!

如果我的代码和我的解释清楚,请告诉我。如果没有,请告诉我你需要更多澄清的部分。

由于

3 个答案:

答案 0 :(得分:1)

我认为您的代码没有任何问题。我怀疑PHP正在生成空白数据而你没有看到任何结果

答案 1 :(得分:-1)

切换已被弃用..您应检查可见性并将其设置为显示或隐藏..

if ($(this).is(':visible')) { $(this).hide() }
else { $(this).show()); }

答案 2 :(得分:-1)

原始HTML: - &gt;

<li class ="span2">
  <span id="test">Click here</span>
    <ul class ="dropDown" id="idGraphic" style="display: none;">   
      <li class ="span1" id ="photoAbout">
        <?php
          echo anchor(LINK_GRAPHIC_ABOUT, 'About', array('style' => 'color:white;'));
        ?>
      </li>
      <li class ="span1" id ="photoGallery">
        <?php                                
          echo anchor(LINK_GRAPHIC_GALLERY, 'Gallery', array('class' => $hover, 'style' => 'color:white;'));                                                                                                
        ?>
      </li>
    </ul>
 </li>

原始Javascript: - &gt;

$( "#test" ).click(function() {
  $( "#idGraphic" ).toggle();
});

已编辑的Javascript: - &gt;

<script src="http://code.jquery.com/jquery-1.10.2.js" type="text/javascript"></script>
<script type="text/javascript">
    $(document).ready(function() {
        $('#test').click(function() {
            $('#idGraphic').toggle();
        });
    });
</script>

在结束正文标记结束后放置已编辑的javascript代码。我猜你已将它放在head标签中,这就是你的jQuery代码在页面加载完成之前执行的原因。希望这会帮助你。