JS實現星級評分


<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
    <title></title>
    <style type="text/css">
        td
        {
            width:50px;
            height:50px;
            border:1px solid #808080;
            cursor:pointer;
        }
    </style>
    <script type="text/javascript">
        window.onload=function()
        {
            var tds = document.getElementsByTagName("td");
            
            for(var i=0;i<tds.length;i++)
            {
               
                tds[i].onmouseenter = OnMouseEnter;
                tds[i].onmouseleave = OnMouseLeave;
                tds[i].onclick = OnClick;

            }
        }
        //判斷是否被點擊,是 就保存黃色;不是 就變為白色
        var isClick = false;

        //鼠標點擊td保留背景色
        function OnClick()
        {
            if (!isClick)
            {
                OnMouseEnter;
                isClick = true;
            }
        }

        //鼠標停留td背景色變黃
        function OnMouseEnter()
        {
            var previous = this.previousElementSibling;
            this.style.backgroundColor = "yellow";
            while (previous)
            {
                previous.style.backgroundColor = "yellow";
                previous = previous.previousElementSibling;
            }
            
        }
        //鼠標移開td背景色變白
        function OnMouseLeave()
        {
            if (!isClick)
            {
                var previous = this.previousElementSibling;
                this.style.backgroundColor = "white";
                while (previous) {
                    previous.style.backgroundColor = "white";
                    previous = previous.previousElementSibling;
                }
            }
        }

    </script>
</head>
<body>
    <div style="text-align:center;">
        <table style="margin:0 auto;">
            <thead>
                評分后不可更改
            </thead>
            <tr>
                <td>1</td>
                <td>2</td>
                <td>3</td>
                <td>4</td>
                <td>5</td>
            </tr>
        </table>
    </div>
</body>
</html>

鼠標點擊后可保留顏色。

頁面效果如下:


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM