Jquery 如何知道slideToggle()是向上移动还是向下移动?
此代码如何确定向上切换或向下切换?请帮忙。谢谢Jquery 如何知道slideToggle()是向上移动还是向下移动?,jquery,jquery-ui,Jquery,Jquery Ui,此代码如何确定向上切换或向下切换?请帮忙。谢谢 <html> <head> <script type="text/javascript" src="jquery.js"></script> <script type="text/javascript"> $(document).ready(function(){ $(".flip")
<html>
<head>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript">
$(document).ready(function(){
$(".flip").click(function(){
$(".panel").slideToggle();
});
});
</script>
<style type="text/css">
div.panel,p.flip {
margin:0px;
padding:5px;
text-align:center;
background:#e5eecc;
border:solid 1px #c3c3c3;
}
div.panel {
height:120px;
display:none;
}
</style>
</head>
<body>
<div class="panel">
<p>Crap.</p>
</div>
<p class="flip">Show/Hide Panel</p>
</body>
</html>
$(文档).ready(函数(){
$(“.flip”)。单击(函数(){
$(“.panel”).slideToggle();
});
});
分区面板,p翻转{
边际:0px;
填充物:5px;
文本对齐:居中;
背景:#e5eecc;
边框:实心1px#c3c3;
}
分区小组{
高度:120px;
显示:无;
}
废话
显示/隐藏面板
它检查要切换的内容是否可见如果元素当前设置为显示:无;或者以其他方式隐藏。例如,高度为0。然后它会向下滑动,否则它会向上滑动
现在,当CSS显示时,代码将向下滑动:无;在其中。您可以检查元素是否可见。如果它可见,
slideToggle()
将向上移动。如果它不可见,它将向下移动
// Want to know if it's visible?
$(this).is(":visible");
你也可以在事后确定它的方向:
当然,这是假设您没有任何定位元素,而看起来您没有定位元素。直接从jQuery站点获取(http://api.jquery.com/slideToggle/) 如果元素最初显示,它将被隐藏;如果隐藏,它将显示。显示特性将根据需要进行保存和还原。如果某个元素的显示值为inline,则隐藏并显示后,它将再次以inline显示。隐藏动画后高度达到0时,“显示样式”属性将设置为“无”,以确保元素不再影响页面布局
希望这能有所帮助。您可以使用jquery css函数, 我在这里编写javaScript代码,代码中还有一些更改
$(document).ready(function(){
$(".flip").click(function(){
if($(".panel").css("display") == 'block') {
alert('Visible');
} else {
alert('Not visible');
}
$(".panel").slideToggle();
});
});
请参阅“完成工作”根据您的需要,您是否希望在操作之前或之后发出警报移动我在slideToggle函数调用之前或之后添加的if块。
$(document).ready(function(){
$(".flip").click(function(){
if($(".panel").css("display") == 'block') {
alert('Visible');
} else {
alert('Not visible');
}
$(".panel").slideToggle();
});
});