jQuery點擊圖片來回切換功能

在項目裏,有時候會寫這樣的開關效果,點擊開關來回切換,也就是jquery實現點擊圖片切換爲另一圖片,再次點擊恢復到原圖片。

下面是一個小的demo示例:

<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
        <title></title>
        <script src="http://code.jquery.com/jquery-1.8.0.min.js"></script>
    </head>
    <body>
        <div>
            <img class="imgclick" src="images/off.png"/>
        </div>       
    </body>
    <script>
        /* 實現圖片切換 */
        $(".imgclick").toggle(function() {
            $(this).attr("src", "images/off.png");
        }, function() {
            $(this).attr("src", "images/on.png");
        }).attr("src", "images/on.png");
    </script>
</html>

但是這裏需要注意的問題是
toggle() 方法在 jQuery 版本 1.8 中[被廢棄](javascript:NewWindow('/try/deprecated.htm');),在版本 1.9 中被移除。

所以換個demo
實現一下jQuery點擊圖片來回切換功能

<!DOCTYPE html>
<html lang="en">
    <head>
        <meta charset="UTF-8">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <meta http-equiv="X-UA-Compatible" content="ie=edge">
        <title></title>
    </head>

    <body>

        <img class="button" src="images/checked.png">
    </body>
    <script src="http://code.jquery.com/jquery-1.8.0.min.js"></script>
    <script>
        //這是一個全局變量
        var kg = true; //給一個開關並賦值,用來進行後面的 if else 條件判斷

        $(".button").click(function() { //給button按鈕一個點擊事件

            if (kg) { //進行判斷               //attr() 方法設置或返回被選元素的屬性值
                $(this).attr("src", "images/check.png") //這裏一定要放另外的一張圖,不然當點擊時,會實現不了切換的效果
            } else {
                $(this).attr("src", "images/checked.png")
            }
            kg = !kg; //這裏的感嘆號是取反的意思,如果你沒有寫,當你點擊切換回第一張圖片時,就會不生效
        })
    </script>

</html>
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章