Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/369.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
Javascript jQuery slideDown无法正常运行_Javascript_Jquery_Css_Jquery Animate - Fatal编程技术网

Javascript jQuery slideDown无法正常运行

Javascript jQuery slideDown无法正常运行,javascript,jquery,css,jquery-animate,Javascript,Jquery,Css,Jquery Animate,我希望设置一个div的动画,使其显示并使用jQuery向下滑动 我已经让我的脚本工作,当你把鼠标悬停在一个图像上,另一个div滑入,如果用户离开鼠标悬停,div将向上滑动并消失 问题: function show_action(){ $(function(){ $(".action").hide(); $(".logo").hover( function(){ $(".action").slideDown(); },

我希望设置一个div的动画,使其显示并使用jQuery向下滑动

我已经让我的脚本工作,当你把鼠标悬停在一个图像上,另一个div滑入,如果用户离开鼠标悬停,div将向上滑动并消失

问题:

function show_action(){
    $(function(){
        $(".action").hide();
        $(".logo").hover(
            function(){ $(".action").slideDown(); },
            function(){ $(".action").slideUp(); }
        );
    });
}
#action_text{
    display:none;
}
<div class="center_container">
  <div class="action" id="action_text"><span>Click To Upload</span></div>
  <img src="images/logo.png" class="logo" onmouseover="show_action();"> 
</div>
我第一次在图像上悬停时,什么也没发生。我必须离开我的鼠标,第二次在上面悬停,效果才能开始工作,我不明白为什么会这样

jQuery:

function show_action(){
    $(function(){
        $(".action").hide();
        $(".logo").hover(
            function(){ $(".action").slideDown(); },
            function(){ $(".action").slideUp(); }
        );
    });
}
#action_text{
    display:none;
}
<div class="center_container">
  <div class="action" id="action_text"><span>Click To Upload</span></div>
  <img src="images/logo.png" class="logo" onmouseover="show_action();"> 
</div>
CSS:

function show_action(){
    $(function(){
        $(".action").hide();
        $(".logo").hover(
            function(){ $(".action").slideDown(); },
            function(){ $(".action").slideUp(); }
        );
    });
}
#action_text{
    display:none;
}
<div class="center_container">
  <div class="action" id="action_text"><span>Click To Upload</span></div>
  <img src="images/logo.png" class="logo" onmouseover="show_action();"> 
</div>
HTML:

function show_action(){
    $(function(){
        $(".action").hide();
        $(".logo").hover(
            function(){ $(".action").slideDown(); },
            function(){ $(".action").slideUp(); }
        );
    });
}
#action_text{
    display:none;
}
<div class="center_container">
  <div class="action" id="action_text"><span>Click To Upload</span></div>
  <img src="images/logo.png" class="logo" onmouseover="show_action();"> 
</div>

点击上传

我认为您正在调用函数
show_action
作为
onhover=“show_action()
移除该函数,并将其余代码移到函数包装之外,否则事件处理程序只会在第一次悬停后绑定。另外,请使用清除动画队列

$(函数(){
$(“.action”).hide();
$(“.logo”)。悬停(
函数(){
$(“.action”).stop().slideDown();
},
函数(){
$(“.action”).stop().slideUp();
}
);
});

在这里盘旋

内容
此处
无需在
.action
元素上调用
.hide()
。只需在css中给它
显示:无
,这样页面加载时它就不会显示。这样,你就不需要
停止()
以清除动画队列,并且它还可以防止当页面加载一小段时间后,
.action
元素将出现“闪烁”效果,直到调用
.hide()

$(文档).ready(函数(){
$('.logo')。悬停(
函数(){
$(“.action”).slideDown();
},
函数(){
$(“.action”).slideUp();
}
);
});
.action{
宽度:100%;
背景色:红色;
显示:无;
}

标志
行动

你有完整的代码了吗。可能是JSFIDLE的。@JimmyDoe:很乐意帮忙:)