国产成人精品18p,天天干成人网,无码专区狠狠躁天天躁,美女脱精光隐私扒开免费观看

JavaScript實(shí)現鼠標控制自由移動(dòng)的窗口

發(fā)布時(shí)間:2021-08-17 12:16 來(lái)源: 閱讀:0 作者:妄癡夢(mèng)中 欄目: JavaScript 歡迎投稿:712375056

本文實(shí)例為大家分享了JavaScript實(shí)現鼠標控制自由窗口的具體代碼,供大家參考,具體內容如下

代碼:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>用鼠標移動(dòng)的窗口</title>
    <style>
        .mainDiv {
            width: 350px;
            height: 200px;
            border: 2px black solid;
            position: absolute;
        }

        .titleDiv {
            width: 350px;
            height: 30px;
            background-color: YellowGreen  ;
            text-align: center;
            line-height: 30px;
        }

        .contentDiv {
            width: 350px;
            height: 170px;
            background-color: SandyBrown ;
            text-align: center;
        }
    </style>
</head>
<body>
<!--onmousedown:事件會(huì )在鼠標按鍵被按下時(shí)發(fā)生; onmousemove:事件會(huì )在鼠標指針移到指定的對象時(shí)發(fā)生-->
<div class="mainDiv" id="mainDiv" style="top: 20px;left: 20px">
    <div class="titleDiv" id="titleDiv" onmousedown="mouseDown()" onmouseup="mouseUp()">
        標題欄
    </div>
    <div class="contentDiv">
        《鼠標可控的自由窗口》<br>
        注意:沒(méi)有給mainDiv設置position為absolute前不能移動(dòng)
    </div>
</div>
<script>
    var dx;
    var dy;
    var mainDivObj = null;
    var titleDivObj = null;

    /**
     * 鼠標按下函數,當鼠標按下時(shí)執行該函數
     */
    function mouseDown() {
        //獲得鼠標的鍵值,0是鼠標左鍵;1是鼠標滾軸鍵;2是鼠標右鍵
        if (event.button == 0) {
            mainDivObj = document.getElementById("mainDiv");
            titleDivObj = document.getElementById("titleDiv");
            //設置鼠標樣式
            titleDivObj.style.cursor = "move";
            //設置主div的陰影樣式
            mainDivObj.style.boxShadow = "0px 0px 10px #000";
            //獲得鼠標當前坐標
            let x = event.x;
            let y = event.y;
            dx = x - parseInt(mainDivObj.style.left);
            dy = y - parseInt(mainDivObj.style.top);

        }
    }

    //鼠標移動(dòng)的時(shí)候調用
    document.onmousemove = mouseMove;

    /**
     * 按下鼠標后移動(dòng)函數,當鼠標移動(dòng)是執行該函數,移動(dòng)div
     */
    function mouseMove() {
        if (mainDivObj != null) {
            //獲得鼠標當前移動(dòng)的坐標位置
            let x = event.x;//鼠標移動(dòng)的x軸的坐標
            let y = event.y;//鼠標移動(dòng)的y軸的坐標
            //計算div移動(dòng)后的left與top的距離
            //使用當前坐標減去鼠標在div中的位置與div左邊與頂端的距離
            let left = x - dx;
            let top = y - dy;
            //設置div新的坐標位置
            mainDivObj.style.left = left + "px";
            mainDivObj.style.top = top + "px";
        }
    }
    /**
     * 鼠標松開(kāi)函數,當鼠標松開(kāi)時(shí)執行該函數
     */
    function mouseUp() {
        if (mainDivObj != null) {
            dx = null;
            dy = null;
            //設置div的陰影樣式
            mainDivObj.style.boxShadow="none";
            mainDivObj = null;
            titleDivObj.style.cursor="pointer";
            titleDivObj = null;
        }
    }
</script>
</body>
</html>

以上就是本文的全部?jì)热?,希望對大家的學(xué)習有所幫助,也希望大家多多支持腳本之家。

免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng )、來(lái)自本網(wǎng)站內容采集于網(wǎng)絡(luò )互聯(lián)網(wǎng)轉載等其它媒體和分享為主,內容觀(guān)點(diǎn)不代表本網(wǎng)站立場(chǎng),如侵犯了原作者的版權,請告知一經(jīng)查實(shí),將立刻刪除涉嫌侵權內容,聯(lián)系我們QQ:712375056,同時(shí)歡迎投稿傳遞力量。

亚洲国产精品无码久久sM| 午夜少妇性影院私人影院| 亚洲欧美日韩精品专区| 在线精品无码字幕无码AV| 中文字幕av免费专区 | 亚洲日韩欧美一区二区三区|