美文网首页
原生js小项目---拖拽小方块--- js菜单栏

原生js小项目---拖拽小方块--- js菜单栏

作者: 刘翾 | 来源:发表于2017-11-08 21:03 被阅读67次

拖拽小方块

HTML部分省去

function getStyle(elem, prop, fakeNode) {
    if(window.getComputedStyle){
        return window.getComputedStyle(elem, fakeNode)[prop];
    }else{//低版本IE
        return elem.currentStyle[prop];
    }
}


function drag(elem) {
    addEvent(elem, 'mouseDown', function(e) {
        var disX,
            disY,
            event = e || window.event;
        disX = event.clientX - parseInt(getStyle(elem, 'left'));
        disY = event.clientY - parseInt(getStyle(elem, 'top'));
        addEvent(document, 'mousemove', mouseMove);
        addEvent(document, 'mouseup', mouseUp);
        function mouseMove(e) {
            var event = e || window.event;
            removeEvent(document, 'mousemove', mouseMove);
            removeEvent(document, 'mouseup', mouseUp);
        }
        function mouseMove(e) {
            var event = e || window.event;
            elem.style.left = event.clientX - disX + "px";
            elem.style.top = event.clientY - disY + "px";       
        }
        event.preventDefault();
        event.stopPropagation();
    })
}

js菜单栏

HTML部分省略, 思想如下代码

var wrapper = document.getElementsByClassName('wrapper')[0];
var btn = wrapper.getElementsByTagName('button');
var div = wrapper.getElementsByTagName('div');

for(var i = 0; i < btn.length; i++){
    (function(n) {
        btn[n].onclick = function() {
            for(var i = 0; i < btn.length; i++){
                btn[i].className = "";
                div[j].style.display = "none";
            }
            this.className = "active";
            div[n].style.display = "block";
        }
    }(i))
}

相关文章

  • 原生js小项目---拖拽小方块--- js菜单栏

    拖拽小方块 HTML部分省去 js菜单栏 HTML部分省略, 思想如下代码

  • js拖拽html元素工具类

    复制就能用的拖拽js方法 原生js实现拖拽元素方法 使用(注意拖拽目标元素需绝对定位 position: 'abs...

  • 实现拖拽

    原生js实现 HTML5原生实现:拖拽draggable属性、DataTranfers对象

  • JS原生项目

    JS原生项目 知识点-思维导图js原生项目.png JS作用 实际项目里js的应用点1.获取数据渲染页面2.页面上...

  • 原生js实现可拖拽功能

    原生js实现一个可全局拖拽的按钮功能,直接上代码*js部分 *html部分 *css部分

  • jquery html5 Sortable.js 拖拽排序源码分

    最近公司项目经常用到一个拖拽 Sortable.js插件,所以有空的时候看了 Sortable.js 源码拖拽的时...

  • 原生js拖拽效果

    最近新学了拖拽效果,没有好记性,只好用烂笔头记录一下了。首先讲讲拖拽的思路(只分析水平方向,垂直方向类似): 首先...

  • 原生js实现拖拽

    onmousedown,onmousemove,onmouseup 先看js代码.static定位:positio...

  • WKWebView中JS与原生方法交互

    JS与iOS原生方法交互的场景还是比较多的, 项目中用到原生加载h5界面, 然后js与原生交互. 原生端调用js端...

  • 常见tab效果的实现

    原生JS实现 tab栏切换地址JQ实现左侧菜单栏地址JQ实现滑动切换地址

网友评论

      本文标题:原生js小项目---拖拽小方块--- js菜单栏

      本文链接:https://www.haomeiwen.com/subject/bpfumxtx.html