最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

JavaScript實(shí)現(xiàn)簡單的拖拽效果

 更新時(shí)間:2021年11月07日 16:02:24   作者:小白小白從不日白  
這篇文章主要為大家詳細(xì)介紹了JavaScript實(shí)現(xiàn)簡單的拖拽效果,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下

本文實(shí)例為大家分享了JavaScript實(shí)現(xiàn)簡單的拖拽效果的具體代碼,供大家參考,具體內(nèi)容如下

1.先搭架子:

* {
            margin: 0;
            padding: 0;
        }
        
        p {
            background: skyblue;
            text-align: center;
        }
        
        html,
        body {
            width: 100%;
            height: 100%;
        }
        
        .mask {
            width: 100%;
            height: 100%;
            position: fixed;
            left: 0;
            top: 0;
            background: rgba(0, 0, 0, .5);
            display: none;
        }
        
        .login {
            width: 400px;
            height: 300px;
            background: purple;
            position: absolute;
            left: 50%;
            top: 50%;
            transform: translate(-50%, -50%);
            display: none;
            cursor: move;
        }
        
        .login>span {
            display: inline-block;
            width: 50px;
            height: 50px;
            background: red;
            position: absolute;
            top: 0;
            right: 0;
        }
<p>我是p標(biāo)簽</p>
    <a  >官網(wǎng)</a>
    <div class="mask"></div>
    <div class="login">
        <span></span>
</div>

2.邏輯部分

//1.拿到需要操作的元素
const oP = document.querySelector("p");
const oMask = document.querySelector(".mask");
const oLogin = document.querySelector(".login");
const oClose = oLogin.querySelector(".login>span");
// console.log(oClose);
 
//2.監(jiān)聽點(diǎn)擊事件
oP.onclick = function() {
    oMask.style.display = "block";
    oLogin.style.display = "block";
        };
        oClose.onclick = function() {
            oMask.style.display = "none";
            oLogin.style.display = "none";
        };
 
//3.監(jiān)聽登錄框的按下和移動(dòng)事件
oLogin.onmousedown = function(e) {
            e = e || e.window;
 
            //1.計(jì)算固定不變的距離
            const x = e.pageX - oLogin.offsetLeft;
            const y = e.pageY - oLogin.offsetTop;
            // console.log(x);
 
            //2.監(jiān)聽移動(dòng)事件
            oLogin.onmousemove = function(e) {
                e = e || e.window;
 
                //3.計(jì)算移動(dòng)之后的偏移位
                let offsetX = e.pageX - x;
                let offsetY = e.pageY - y;
 
                //4.重新設(shè)置登錄框的位置
                oLogin.style.left = offsetX + 'px';
                oLogin.style.top = offsetY + 'px';
            };
        };
 
        oLogin.onmouseup = function() {
            oLogin.onmousemove = null;
        };

以上就是本文的全部內(nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • js 實(shí)現(xiàn)無干擾陰影效果 簡單好用(附文件下載)

    js 實(shí)現(xiàn)無干擾陰影效果 簡單好用(附文件下載)

    js實(shí)現(xiàn)無干擾陰影效果,簡單好用,需要的朋友可以參考下。
    2009-12-12
  • JS獲取頁面input控件中所有text控件并追加樣式屬性

    JS獲取頁面input控件中所有text控件并追加樣式屬性

    使用jquery來在頁面加載時(shí)獲取頁面input控件中所有text控件并添加樣式,由于其他方式比較麻煩所以就想通過在頁面加載的時(shí)候?qū)⒁膭?dòng)的text找到并添加屬性,感興趣的你可以參考下,希望可以幫助到你
    2013-02-02
  • js取float型小數(shù)點(diǎn)后兩位數(shù)的方法

    js取float型小數(shù)點(diǎn)后兩位數(shù)的方法

    js中取小數(shù)點(diǎn)后兩位方法最常用的就是四舍五入函數(shù)了,前面我介紹過js中四舍五入一此常用函數(shù),這里正好用上,下面我們一起來看取float型小數(shù)點(diǎn)后兩位一些方法總結(jié)
    2014-01-01
  • location.href 在IE6中不跳轉(zhuǎn)的解決方法與推薦使用代碼

    location.href 在IE6中不跳轉(zhuǎn)的解決方法與推薦使用代碼

    在js中,我們經(jīng)常使用location.href來實(shí)現(xiàn)頁面的跳轉(zhuǎn),為了方便我們寫成函數(shù)。下面就分別說明下,下面的一些代碼的實(shí)現(xiàn)問題。
    2010-07-07
  • electron 如何將任意資源打包的方法步驟

    electron 如何將任意資源打包的方法步驟

    這篇文章主要介紹了electron 如何將任意資源打包的方法步驟,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-04-04
  • 微信小程序?qū)崿F(xiàn)音樂播放器實(shí)例完整流程

    微信小程序?qū)崿F(xiàn)音樂播放器實(shí)例完整流程

    這篇文章主要介紹了微信小程序?qū)崿F(xiàn)音樂播放器實(shí)例完整流程,通過本章的學(xué)習(xí),讀者能夠掌握小程序的基本交互邏輯的開發(fā),能夠運(yùn)用API來實(shí)現(xiàn)項(xiàng)目中的特定功能,學(xué)會(huì)解決開發(fā)過程中常見的問題,需要的朋友可以參考下
    2024-10-10
  • 微信小程序?qū)崿F(xiàn)比較功能的方法匯總(五種方法)

    微信小程序?qū)崿F(xiàn)比較功能的方法匯總(五種方法)

    這篇文章主要介紹了微信小程序?qū)崿F(xiàn)比較功能的方法,本文給大家列舉出五種方式,每種方法通過實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-03-03
  • JavaScript Math對(duì)象和調(diào)試程序的方法分析

    JavaScript Math對(duì)象和調(diào)試程序的方法分析

    這篇文章主要介紹了JavaScript Math對(duì)象和調(diào)試程序的方法,結(jié)合實(shí)例形式分析了javascript中Math對(duì)象生成隨機(jī)數(shù)以及使用alert()、console.log()函數(shù)進(jìn)行錯(cuò)誤調(diào)試相關(guān)操作技巧,需要的朋友可以參考下
    2019-05-05
  • JavaScript基于對(duì)象去除數(shù)組重復(fù)項(xiàng)的方法

    JavaScript基于對(duì)象去除數(shù)組重復(fù)項(xiàng)的方法

    這篇文章主要介紹了JavaScript基于對(duì)象去除數(shù)組重復(fù)項(xiàng)的方法,結(jié)合實(shí)例形式分析了javascript數(shù)組去重的操作步驟與具體實(shí)現(xiàn)技巧,需要的朋友可以參考下
    2016-10-10
  • 實(shí)例分析JS中的相等性判斷===、 ==和Object.is()

    實(shí)例分析JS中的相等性判斷===、 ==和Object.is()

    這篇文章主要給大家介紹了關(guān)于JS中相等性判斷===、 ==和Object.is()的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用JS具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-11-11

最新評(píng)論

金阳县| 南华县| 旺苍县| 柳江县| 潮州市| 佳木斯市| 焉耆| 镇坪县| 日土县| 乳源| 新安县| 都兰县| 化州市| 崇义县| 小金县| 芷江| 乌兰浩特市| 交城县| 沭阳县| 安陆市| 恩平市| 宁武县| 阳山县| 会东县| 环江| 全州县| 玉溪市| 崇文区| 武陟县| 上蔡县| 新蔡县| 台中县| 呼和浩特市| 稻城县| 天全县| 鄢陵县| 从江县| 莲花县| 阿克苏市| 祥云县| 邯郸市|