2015-10-15 78 views

回答

4

試試這個代碼

$("p").hide(); 
$(".btn").html("more"); 
$(".btn").click(function() { 
    $("p").toggle(); 
    if($('p').css('display') == 'none') { 
    $(".btn").html("more"); 
    } else { 
    $(".btn").html("less"); 
    } 
}); 
0

使用以下代碼:

$(".btn").toggle(function() { 
    $(".btn").html("less"); 
}, function() { 
    $(".btn").html("more"); 
}); 

被切換功能內聲明上述兩個功能將被用於文本lessmore之間切換。

我懷疑你正試圖改變按鈕的文本,如果是,那麼使用.val()代替.html()

0

$('input').click(function() { 
 
    alert($(this).val()) 
 
    if ($(this).val() == 'more') { 
 
    $(this).val('less') 
 
    } else { 
 
    $(this).val('more') 
 
    } 
 

 
})
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script> 
 
<input type='button' value='more' />

像這樣做。如果使用的是沒有價值的其他元素只是改變.val().text() or .html()

0

這裏是一個可能的解決方案:

$(document).ready(function() { 
 
    
 
$(".btn").on('click', function(){ 
 

 
    if ($(this).text() == "less") 
 
    { 
 
     $(this).text('more') 
 
    } 
 
    else 
 
    { 
 
     $(this).text('less') 
 
    } 
 

 
}); 
 
    
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<button type="button" class="btn">less</button>