×
登陆
账号:
密码:
// 封装一个通过class获取元素的方法
function getByClass(clsName, parent){
var oParent = parent ? document.getElementById(parent) : document,
eles = [],
elements = oParent.getElementsByTagName('*');
for(var i = 0, l = elements.length; i < l; i++){
// console.log(elements[i].className == clsName)
if(elements[i].className == clsName){
eles.push(elements[i]);
}
}
return eles;
}
window.onload = drag;
function drag(){
var oTitle = getByClass('login_logo_webqq text-center modal-header', 'loginPanel')[0];
// 拖动
oTitle.onmousedown = fnDown;
// 关闭
var oClose = document.getElementById('ui_boxClose');
oClose.onclick = function(){
document.getElementById('loginPanel').style.display = 'none';
}
// 切换状态
var loginState = document.getElementById('loginState'),
stateList = document.getElementById('loginStatePanel'),
lis = stateList.getElementsByTagName('li'),
stateTXT = document.getElementById('login2qq_state_txt'),
loginStateShow = document.getElementById('loginStateShow');
loginState.onclick = function(e){
e = event || window.event;
if (e.stopProgation) {
e.stopProgation();
}else{
e.cancelBubble = true;
}
stateList.style.display = 'block';
}
// 鼠标滑过、离开和点击状态列表时
for(var i = 0, l = lis.length; i < l; i++){
lis[i].onmouseover = function(){
this.style.background = '#567';
}
lis[i].onmouseout = function(){
this.style.background = '#fff';
}
lis[i].onclick = function(e){
e = event || window.event;
if(e.stopProgation){
e.stopProgation();
}else{
e.cancelBubble = true;
}
var id = this.id;
stateList.style.display = 'none';
stateTXT.innerHTML = getByClass('stateSelect_text', id)[0].innerHTML;
loginStateShow.className = '';
loginStateShow.className = 'login-state-show ' + id;
}
}
document.onclick = function(){
stateList.style.display = 'none';
}
}
function fnDown(event){
event = event || window.event;
var oDrag = document.getElementById('loginPanel'),
disX = event.clientX - oDrag.offsetLeft -150,
disY = event.clientY - oDrag.offsetTop -100;
// 移动
document.onmousemove = function(event){
event = event || window.event;
fnMove(event, disX, disY);
}
// 释放鼠标
document.onmouseup = function(){
document.onmousemove = null;
document.onmouseup = null;
}
}
function fnMove(e, posX, posY){
var oDrag = document.getElementById('loginPanel'),
l = e.clientX - posX,
t = e.clientY - posY,
winW = document.documentElement.clientWidth || document.body.clientWidth,
winH = document.documentElement.clientHeight || document.body.clientHeight
maxW = winW - oDrag.offsetWidth + 150,
maxH = winH - oDrag.offsetHeight + 100;
// console.log(l)
if (l < 150) {
l = 150;
}else if(l > maxW){
l = maxW
}
if (t < 100) {
t = 100;
}else if(t > maxH){
t = maxH;
}
oDrag.style.left = l + 'px';
oDrag.style.top = t + 'px';
}
