素材牛VIP会员

弹窗拖拽和放大缩小

 浏览:641次-  评论:0次-  发布时间:2017-03-30
    Html
    Css
    Js
↑上面代码改变,会自动显示代码结果
jQuery调用版本:2.1.4
素材牛VIP永久特权
积分说明:注册即送10牛币,每日签到可获得5牛币,成为VIP会员可永久免牛币下载!   充值积分   充值会员   更多说明»
代码描述:能移动的弹窗 可以横向纵向的放大和缩小 可以在浏览器内随意移动

统一HTML5在线开发工具代码风格,实现开发工程化,提高代码复用率,降低开发代码

开发规范

1.目录结构

    目录分为cssimagesjs 三个目录文件夹

2.css

    main.css  页面布局样式

3.images

页面所有图片

4.js

    a) jquery-1.7.1.js     jQuery库

    b) scripts.js   封装拖拽插件

插件

1.插件名称 myPlugin

2.插件调用 $(元素).myPlugin(参数)

3.插件的基本定义

$.fn.myPlugin = function(options) {
var defaults = {
    参数1:''
    参数2:''
};
var settings = $.extend({} , defaults, options);
}

插件引用(scripts.js)

1.拖拽弹窗

a) 参数 draftin : '.J-xloginPanel h3' 拖拽的元素

b) 参数 parentdraf : '.J-xloginPanel' 拖拽元素父级

c) 当鼠标按下时获取(当前x,y轴到父级的距离)

var disX = event.pageX - $(settings.parentdraf).offset().left
var disY = event.pageY - $(settings.parentdraf).offset().top

d) 当鼠标移动时获取(移动坐标,最大移动的距离)

var mouseX = event.pageX - disX
var mouseX = event.pageY - disY
var maxX = 浏览器宽度 - 弹窗宽度
var maxY = 浏览器高度 - 弹窗高度

e) 移动的距离   mouseX  mouseX

f) 最大移动距离 maxX  maxY

g) 最小移动距离 0  0

h) $(弹窗).css({'left' : mouseX, 'top':mouseY})

2.左边拖拽

a) 参数 sizeLeft : '.J-xloginPanel .barl'  左边拖拽

b) 当鼠标按下时获取父元素的宽度,父元素距离左边的距离

var disX = $(settings.parentdraf).offset().left
var drafw = $(settings.parentdraf).width()

c) 当鼠标移动是获取移动距离 var mouseX = event.pageX

d) 最小距离 x=0

e) $(弹窗).css({'left':mouseX , 'width':(disX-mouseX)+drafw })

3.右边拖拽

a) 参数 sizeRight : '.J-xloginPanel .barr' 右边拖拽

b) 当鼠标按下时获取 disX = $(settings.parentdraf).offset().left

c) 当鼠标移动时获取

mouseX = event.pageX - disX

maxX = 浏览器宽度 - disX

d) 移动的最大距离 maxX

e) $(弹窗).css({'width':mouseX })

4.下边拖拽

a) 参数 sizeTop : '.J-xloginPanel .barb 上边拖拽

b) 当鼠标按下时获取父级距离浏览器的距离

disY = $(settings.parentdraf).offset().top

c) 当鼠标移动时获取移动坐标和最大移动的坐标

mouseY = event.pageY-disY

maxY = 浏览器宽 - disY

d) 最大距离 Y = maxY

e) $(弹窗).css({'height':mouseY })

5.右下拖拽

a) 参数 sizeSkew : '.J-xloginPanel .bar'

b) 当鼠标按下时获取父级距离左边的距离,父级距离上边的距离

disX = $(settings.parentdraf).offset().left

disY = $(settings.parentdraf).offset().top

c) 当鼠标移动时获取移动的坐标,移动范围最大的坐标

mouseX = event.pageX - disX

mouseY = event.pageY - disY

maxX = 浏览器宽 - disX

maxY =浏览器高 - disY

d) 最大距离 X = maxX  Y = maxY

e) $(弹窗).css({'width':mouseX ,  'height':mouseY})

讨论这个常用代码(0)回答他人问题或分享心得会奖励牛币

〒_〒 居然一个评论都没有……

 文明上网,理性发言!   😉 阿里云幸运券,戳我领取
我的积分余额:0 已下载次数:641
所需牛币:5 开始下载

牛币获取:签到、评论、充值    » 在线充值(10牛币=1元)