嗨,大家好我每次点击我的div" top"时都会改变高度的iframe。代码以deault高度300开始,当我点击我的div" top"高度下降到0.然而,当我再次点击我的div时,高度不会像我想要的那样转到300。
按顺序排列JS,CSS和HTML文件:
$(document).ready(function () {
$(".top").click(function(){
var height = $("#target").height();
if(height === 300 ){
$("#target").height(0).slideUp();
} else{
$("#target").height(300).slideDown();
}
});
});

.top {
height: 100px;
width: 300px;
background-color: green;
}
.cb {
position: fixed;
right: 0;
bottom: 0;
}

<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<div class="cb">
<div class="top"></div>
<iframe id="target" src="http://www.disney.com" width="300" height="300" frameborder="0" scrolling="no"></iframe>
</div>
&#13;
我是jQuery的新手所以请建议我如何在我的iframe上实现上下滑动功能,所以当我点击它时它会很好地上下滑动。谢谢,祝你有个美好的一天!
答案 0 :(得分:4)
if(height = 300)
应该是
if(height==300)
或更好(除了值之外还检查类型)
if(height===300)
因为&#34;身高= 300&#34;是一个表达式,它分配一个名为&#39; height&#39;的变量。在条件语句中,每次都返回true。以下是有关条件运算符的更多信息:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators#Conditional_(ternary)_operator
答案 1 :(得分:1)
if(height == 300 ){
$("#target").height(0).slideUp(time_in_ms);
那应该处理问题的滑动部分。我相信你的另一个问题是因为身高变量。尝试:
var height = $("#target").attr('height')