![](/img/trans.png)
[英]My jQuery BBCode script doesn't work properly, there is a little bug
[英]My script doesn't work properly and doesn't throw an error
我只是想制作一個可在jQuery中上下滑動的按鈕,但它只能在50%的時間內起作用。 當我按“向上滑動”時,它可以工作,但對“向下滑動”不起作用。 它也不會給我任何錯誤...
這是我的代碼:
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script>
<script>
var test = true
var test2 = false
if(test == true){
$(document).ready(function(){
$(".btn1").click(function(){
$("p").slideUp();
});
});
}
else if(test2 == false){
$(document).ready(function(){
$(".btn2").click(function(){
$("p").slideDown();
});
});
}
</script>
</head>
<body>
<p>Hello Uranus</p>
<button class="btn1">Slide up</button>
<button class="btn2">Slide down</button>
</body>
</html>
我認為我正在忽略某些東西,或者只是在編碼方面很爛,但是任何幫助將不勝感激!
您可以簡單地使用jQuery .slideToggle() :
$('.btn').on('click', function(){ $('p').slideToggle(); });
<script src="//ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script> <p>Hello Uranus</p> <button class="btn">Slide Up/Down</button>
從您的代碼中刪除“其他”
看看基本的javascript開發;)
If - Else
如果您的第一個條件為true,則else
條件將不會執行。 如果您想使所有按鈕正常工作,請執行以下操作:
$(document).ready(function(){
$(".btn1").click(function(){
$("p").slideUp();
});
$(".btn2").click(function(){
$("p").slideDown();
});
});
}
刪除if和else。 看一下這個:
https://jsfiddle.net/wnwrnbw7/
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script> <script> $(document).ready(function(){ $(".btn1").click(function(){ $("p").slideUp(); }); $(".btn2").click(function(){ $("p").slideDown(); }); }); </script> <body> <p>Hello Uranus</p> <button class="btn1">Slide up</button> <button class="btn2">Slide down</button> </body>
條件阻止了這種情況的發生。 只需完全刪除條件即可。
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script>
<script>
$(document).ready(function(){
$(".btn1").click(function(){
$("p").slideUp();
});
});
$(document).ready(function(){
$(".btn2").click(function(){
$("p").slideDown();
});
});
</script>
</head>
<body>
<p>Hello Uranus</p>
<button class="btn1">Slide up</button>
<button class="btn2">Slide down</button>
</body>
</html>
您犯了很多syntax
錯誤以及logical
錯誤。 所以,我解決了那些。 請用我的替換腳本:
$(document).ready(function () {
$(".btn1").click(function () {
$("p").slideUp();
});
$(".btn2").click(function () {
$("p").slideDown();
});
});
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
</head>
<body>
<p>Hello Uranus</p>
<button class="btn1">Slide up</button>
<button class="btn2">Slide down</button>
</body>
<script src="../public/js/jq.js" charset="utf-8"></script>
<script>
function toggle(flag){
if (flag ==1) {
$('p').slideUp();
}else {
$('p').slideDown();
}
}
$('.btn1').click(function(){
toggle(1);
});
$('.btn2').click(function(){
toggle(0);
});
</script>
</html>
注意:嘗試使用此代碼包含jquery文件。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.