Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/85.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
jquery隐藏不工作(非IE)_Jquery_Html_Html Lists_Show Hide - Fatal编程技术网

jquery隐藏不工作(非IE)

jquery隐藏不工作(非IE),jquery,html,html-lists,show-hide,Jquery,Html,Html Lists,Show Hide,jQuery快把我逼疯了。我在网上四处寻找一个简单的分类扩展滑块,但没有找到。我试图在这里创建一个 我遇到的问题是,试图隐藏()以前显示的元素()n。如果在调用hide()之前另一个元素为show()n,则忽略对第一个元素的hide()的调用 请原谅我发布了完整的HTML(请随意建议我将来应该在哪里托管整个代码示例) 如果有人对jQuery插件或我正在尝试的其他实现有任何建议,请告诉我这个方向——我很乐意使用已经制作的东西 <!DOCTYPE html PUBLIC "-//W3C//DT

jQuery快把我逼疯了。我在网上四处寻找一个简单的分类扩展滑块,但没有找到。我试图在这里创建一个

我遇到的问题是,试图隐藏()以前显示的元素()n。如果在调用hide()之前另一个元素为show()n,则忽略对第一个元素的hide()的调用

请原谅我发布了完整的HTML(请随意建议我将来应该在哪里托管整个代码示例)

如果有人对jQuery插件或我正在尝试的其他实现有任何建议,请告诉我这个方向——我很乐意使用已经制作的东西

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
    <head>
        <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script>
        <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.2/jquery-ui.min.js"></script>
        <script type="text/javascript">
            $().ready(function() {
                $("ul.box_li li.parent").mouseenter(function(event){
                    event.stopPropagation();
                    $(this).children("ul:first").show('slide',{direction: 'left'});
                }).mouseleave(function(event){
                    event.stopPropagation();
                    $(this).children("ul:first").hide('slide',{direction: 'left'});
                });
            });
        </script>
        <style type="text/css">
            body {font-size:10pt;}
            ul.box_li li.parent {position:relative;}
            ul.box_li li {background-color:#e6e6e6;width:200px;border:1px solid red;list-style-type:none;padding:5px;}
            ul.box_li>li ul {display: none;position: absolute;top: 0;left: 100%;}
        </style>
    </head>
    <body>
        <ul class="box_li">
            <li class="parent">
                FIRST
                <ul>
                    <li class="parent">
                        FIRST_SUB_1
                        <ul>
                            <li>FIRST_SUB_1_SUB_1</li>
                            <li>FIRST_SUB_1_SUB_2</li>
                            <li>FIRST_SUB_1_SUB_3</li>
                            <li>FIRST_SUB_1_SUB_4</li>
                        </ul>
                    </li>
                    <li>FIRST_SUB_2</li>
                </ul>
            </li>
            <li class="parent">
                SECOND
                <ul>
                    <li>SECOND_SUB_1</li>
                    <li>SECOND_SUB_2</li>
                    <li>SECOND_SUB_3</li>
                    <li>SECOND_SUB_4</li>
                    <li>SECOND_SUB_5</li>
                    <li>SECOND_SUB_6</li>
                    <li>SECOND_SUB_7</li>
                    <li>SECOND_SUB_8</li>
                </ul>
            </li>
            <li class="parent">
                THIRD
            </li>
            <li class="parent">
                FOURTH
                <ul>
                    <li>FOURTH_SUB_1</li>
                    <li>FOURTH_SUB_2</li>
                    <li>FOURTH_SUB_3</li>
                    <li>FOURTH_SUB_4</li>
                    <li>FOURTH_SUB_5</li>
                    <li>FOURTH_SUB_6</li>
                    <li>FOURTH_SUB_7</li>
                    <li>FOURTH_SUB_8</li>
                </ul>
            </li>
            <li class="parent">
                FIFTH
                <ul>
                    <li>FIFTH_SUB_1</li>
                    <li>FIFTH_SUB_2</li>
                    <li>FIFTH_SUB_3</li>
                    <li>FIFTH_SUB_4</li>
                    <li>FIFTH_SUB_5</li>
                    <li>FIFTH_SUB_6</li>
                </ul>
            </li>
        </ul>
    </body>
</html>

$().ready(函数()){
$(“ul.box\u li.parent”).mouseenter(函数(事件){
event.stopPropagation();
$(this.children(“ul:first”).show('slide',{direction:'left'});
}).mouseleave(功能(事件){
event.stopPropagation();
$(this.children(“ul:first”).hide('slide',{direction:'left'});
});
});
正文{字体大小:10pt;}
ul.box_li li.parent{位置:相对;}
ul.box_li li{背景颜色:#e6e6;宽度:200px;边框:1px纯红;列表样式类型:无;填充:5px;}
ul.box_li>li ul{显示:无;位置:绝对;顶部:0;左侧:100%;}
  • 第一
    • 第一部分第1节
      • 第一次
      • 第一部分第1部分第2部分
      • 第一部分第1部分第3部分
      • 第一部分第1部分第4部分
    • 第一部分第二部分
  • 第二
    • 第二组第1组
    • 第二组
    • 第二单元第三单元
    • 第二部分第4节
    • 第二组第5组
    • 第二单元第六单元
    • 第二单元第7单元
    • 第二组第8组
  • 第三
  • 第四
    • 第四组第1组
    • 第四单元第二单元
    • 第四单元第三单元
    • 第四单元第四单元
    • 第四单元第五单元
    • 第四单元第六单元
    • 第四组第七组
    • 第四单元第八单元
  • 第五
    • 第五分队1
    • 第五单元第二单元
    • 第五单元第三单元
    • 第五单元第四单元
    • 第五分队
    • 第五单元第六单元

在这里,您最好能得到类似的效果,如下所示:

$("ul.box_li li.parent").hover(function(){
    $(this).children("ul:first").animate({ width: 'toggle'});
});​
,这是因为jQuery UI效果如何处理它们自己,它们没有真正正确地遵循队列规则,请看:


这些效果故意超出了正常的
fx
动画队列,虽然我不确定是谁做出了这个决定,但应该是另一种方式……但这正是导致当前问题的原因。我猜它们明确用于不可中断的操作,例如对话框消失、选项卡更改等……基本上你不会调用的东西。

+1让我首先欢迎你这么做!
el.animate(animation, { queue: false, ....