问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

我要用javascript和Html语言做一个就像QQ空间上的挂件一样可以用鼠标...

发布网友 发布时间:2022-05-09 18:15

我来回答

3个回答

懂视网 时间:2022-05-17 15:57

经常上qq空间的朋友一定对qq空间的个性编辑模块印象深刻,可以随意的拖动页面上的元素并且调动大小实现动态布局,当然我每次上csdn博客也会在右下角看见一个新闻窗口,这种效果的确很酷,那么我们也来实现一个吧.

实现步骤:
1.首先是动态创建一个类似这样的html结构:
代码如下:



关闭




2.id为body的为你要放置内容的div容器,move是可移动的span,close是关闭这个窗口(准确说是层).
3.然后将事件绑定到这些对象上.具体看一下代码.
代码如下:
sx.activex.windowex={
init:function(step,t,html){
var a=document.createElement("div");
var head=document.createElement("div");
var move=document.createElement("span");
var close=document.createElement("span");
close.innerText="关闭";
var body=document.createElement("div");
head.appendChild(move);
head.appendChild(close);
a.appendChild(head);
a.appendChild(body);
a.style.height="200px";
a.style.width="200px";
a.style.overflow="hidden";
a.style.border="1px red solid";
head.style.backgroundColor="blue";
head.style.height="5%";
move.style.width="90%";
move.style.height="100%";
close.style.height="100%";
close.style.overflow="hidden";
close.style.whiteSpace="nowrap";
close.style.backgroundColor="yellow";
body.style.height="93%";
body.style.width="100%";
body.style.overflow="auto";
a.style.position="absolute";
close.style.position="absolute";
close.style.cursor="hand";
close.style.top=0+"px";
close.style.right=0+"px";
close.onclick=function(){
window.event.cancelBubble=true;
var q=a.offsetHeight;
var h=window.setInterval(function(){
if(Math.abs(q)>=0){
a.style.height=q+"px";
q=q-step;
if(Math.abs(q)//e.style.height=q+"px";
window.clearInterval(h);
//window.setTimeout(function(){
//alert(this==window);
close.style.cursor="normal";
a.parentNode.removeChild(a);
//a.style.lineHeight="0px";
//},10);
}
}else{
window.clearInterval(h);
//a.style.display="none";
}
},t);
}
move.onmousedown=function(){
this.move=1;
this.x=window.event.offsetX;
//alert(this.x);
this.y=window.event.offsetY;
this.setCapture();
}
move.onmousemove=function(){
this.style.cursor="move";
if(window.event.clientX<=0 || window.event.clientY<=0 || window.event.clientX>=document.body.clientWidth || window.event.clientY>=document.body.clientHeight){return false;}
if(this.move==1){

this.parentNode.parentNode.style.left=window.event.clientX-this.x+"px";
this.parentNode.parentNode.style.top=window.event.clientY-this.y+"px";
this.setCapture();
}
}
move.onmouseup=function(){
if(this.move==1){
this.move=0;
//this.style.cursor="normal";
this.releaseCapture();
}
}
a.onmousemove=function(){
if(this.move==1){
if(window.event.clientX-this.offsetLeft<2 || window.event.clientY-this.offsetTop<2) return false;
this.style.width=window.event.clientX-this.offsetLeft+"px";
this.style.height=window.event.clientY-this.offsetTop+"px";
close.style.right="0px";
this.setCapture();
}
else{
if(window.event.offsetX-this.offsetWidth>-6 && window.event.offsetY-this.offsetHeight>-6)
this.style.cursor="nw-resize";
else
this.style.cursor="default";
}
}
a.onmouseup=function(){
if(this.move==1){
this.move=0;
this.releaseCapture();
}
}
a.onmousedown=function(){
if(this.style.cursor=="nw-resize"){
this.move=1;
this.setCapture();
}
}
body.innerHTML=html;
return a;
}

代码也不复杂,主要是什么onmousedown,onmousemove,onmouseup的编写.我调整大小的原理当的你鼠标移动到层的右下角时,鼠标指针改变,这时按下鼠标并且移动时,会将当前层setcapture,移动鼠标层会随鼠标的位置而调整大小,松开鼠标releasecapture.

函数的参数step是你按下关闭时每次时间间隔移动的步数,t是时间间隔,html是你要插入到body层里的html代码.
一下给出一个调用例子:
代码如下:


Untitled Document





var a=sx.activex.windowex.init(10,10,"");
//a.contentEditable=true;
a.style.bottom="0px";
a.style.right="0px";
document.body.appendChild(a);

// -->




代码有bug的地方还请大家多多包涵.

热心网友 时间:2022-05-17 13:05

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<style type="text/css">
#main div{position:absolute;width:220px;height:150px;border:1px solid #999;}
</style>
<script type="text/javascript">
var a;
document.onmouseup=function(){if(!a)return;document.all?a.releaseCapture():window.captureEvents(Event.MOUSEMOVE|Event.MOUSEUP);a="";};
document.onmousemove=function (d){if(!a)return;if(!d)d=event;a.style.left=(d.clientX-b)+"px";a.style.top=(d.clientY-c)+"px";};
function $(o,e){a=o;document.all?a.setCapture():window.captureEvents(Event.MOUSEMOVE);b=e.clientX-parseInt(a.style.left);c=e.clientY-parseInt(a.style.top);}
</script>
</head>
<body>
<div id="main">
<div style="left:100px;top:100px;background:#fc9;" onmousedown="$(this,event)">1</div>
<div style="left:400px;top:100px;background:#9cf;" onmousedown="$(this,event)">2</div>
<div style="left:700px;top:100px;background:#f9c;" onmousedown="$(this,event)">3</div>
<div style="left:100px;top:300px;background:#9fc;" onmousedown="$(this,event)">4</div>
<div style="left:400px;top:300px;background:#c9f;" onmousedown="$(this,event)">5</div>
<div style="left:700px;top:300px;background:#cf9;" onmousedown="$(this,event)">6</div>
</div>
</body>
</html>

祝你成功!

热心网友 时间:2022-05-17 14:23

懒人图库,js效果。
我要用javascript和Html语言做一个就像QQ空间上的挂件一样可以用鼠标...

main div{position:absolute;width:220px;height:150px;border:1px solid #999;} &lt;/style&gt; &lt;script type="text/javascript"&gt; var a;document.onmouseup=function(){if(!a)return;document.all?a.releaseCapture():window.captureEvents(Event.MOUSEMOVE|Event.MOUSEUP);a="";};document.onmousemove=...

qq空间挂件的代码

以下是我整理出来的部分QQ空间挂件图案及代码,欢迎大家选用(点击小图看大图):1.挂玉:&lt;img src="javascript:document.getElementById('Mlogo').innerHTML+='&lt;div style=\'position:absolute;top:30;left:50;\'&gt;&lt;img src=\'http://qqjia.com/learn/q-zone/gj18/1.gif\' WIDTH=\'48\' ...

谁有qq空间漂浮物和鼠标的代码?

进入 http://club.qzone.qq.com/award.html 随便找个CLUB 加 一下, 就有了。然后再去自己空间,点CLUB,退出CLUB ,就OK了。足球主题的挂件七个:巴西万岁 javascript:window.top.space_addItem(2,5875,0,0,1,1,0);加油法兰西 javascript:window.top.space_addItem(2,5876,0,0,1,1,0...

求一些现在可以免费使用的QQ空间免费的鼠标、标题、挂件代码

javascript:window.top.space_addItem(16,14430,0,0,200,200,0);俺是有钱人挂件:javascript:window.top.space_addItem(16,14431,0,0,200,200,0);金牛座 挂件:javascript:window.top.space_addItem(16,14429,0,0,200,200,0);开场动画:欢迎来我家:javascript:window.top.space_addItem(14,4386,...

QQ空间漂浮,挂件代码

鼠标代码:javascript:window.top.space_addItem(4,5837,0,0,1,1,0);javascript:window.top.space_addItem(4,5535,0,0,1,1,0);漂浮:javascript:window.top.space_addItem(5,11053,0,0,4,0,0);挂件 生日蛋糕 javascript:window.top.space_addItem(16,15916,0,0,200,200,0);挂件:乐肤洁 ...

免费qq空间装饰挂件代码

挂件 乐肤洁 javascript:window.top.space_addItem(2,4965,0,0,1,1,0);生日蛋糕 javascript:window.top.space_addItem(16,15916,0,0,200,200,0);礼物盒子 javascript:window.top.space_addItem(2,6783,0,0,1,1,0);巴西万岁 javascript:window.top.space_addItem(2,5875,0,0,1,1,0);加...

跪求qq空间闪闪的 那个 挂件的代码

javascript:window.top.space_addItem(16,27635,100,40,50,50,0); 一粒闪钻 javascript:window.top.space_addItem(16,27615,51,3,30,205,100); 微闪 javascript:window.top.space_addItem(6,40250,-81,18,0,0,0);弄上去后移动到上面就可以勒 呵呵。我够意思吧!!不过怎么没分啊。开...

qq空间从下往上飘的挂件代码

QQ空间放置的flash代码都是通过审核的才能显示出来,可以到这个网址挑选喜欢的flash代码http://www.kjhc520.com/thread-7-1-1.html,具体设置方法,看下面步骤。第一步,打开QQ空间,点击装扮。第二步,点击换版式,再点击增删版块,再点击自定义模块,再点击新建模块。第三步,选择flash模块。第四步...

通缉QQ空间鼠标代码和漂浮物代码!

第一步:进入空间,在地址栏里输入代码,然后按回车键 第二步:点下装扮空间再点保存方案,或则点自定义移动一下其它模块,然后点保存!皮肤和开场代码:名称:欢迎来我家!类型:欢迎动画 欢迎来我家:javascript:window.top.space_addItem(14,4386,0,0,1,1,0);幽夜幕: javascript:window.top.space_...

求一些可以用的QQ空间免费鼠标代码

javascript:window.top.space_addItem(4,5535,0,0,1,1,0);javascript:window.top.space_addItem(4,5837,0,0,1,1,0);javascript:window.top.space_addItem(4,4966,0,0,0,1,0);javascript:window.top.space_addItem(4,1151,0,0,0,1,0);...

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
平阴县第一中学建校背景 平阴新一中初中新生应该准备什么东西? 2010年平阴新一中高中一年学费多少钱 平阴新一中往年试题,求,近期用,加招生计划!!!瞎答者S!!!请在两天内解 ... 硬盘格式化分区 硬盘ssd和hhd混合用 两个盘都要分区 在分区的时候 4k对... 硬盘功耗:固态与机械谁更耗电? ...块现象?它是怎么拼出来的?大学某老师说谷歌地图是人为P的..._百度... 使用usb分线器连接鼠标,usb optical mouse安装失败,(直接插电脑上的时候... 我用带芯片的USB数据线连接2个电脑,已经安装了数据线的驱动了,现在想让... 请问,从真南路1051弄到澳门路519号怎么走? 我想买一个可以玩steam平台上游戏的电脑。想问问大神们。都需要什么配置啊。 货币政策的传到机制为何影响实体经济 我国今年以来实行了哪些货币政策,理论上说会产生哪些作用和影响? 货币政策对收缩经济方面的作用较大? 我想要一个变声的软件 谁能给我个变声软件啊! 变音软件 最佳变声的软件简介 中国人应该过感恩节吗 比亚迪l3改装后备箱喇叭怎么接线 后备箱,可以加装音响喇叭吗 卡罗拉后备箱喇叭是多厚的 13年比亚迪速锐自动后备箱喇叭多少寸 二分频喇叭可以装后备箱吗 探险者钛金版后备箱有喇叭吗 我想问下我们有个群,但是群里没加好友,不小心按了那人拍了拍,请问那人微信能收到拍了拍吗? 科沃兹加装后备箱喇叭怎么接线 如何将腾讯企业邮箱从一个转另一个 传祺M8汽车后备箱喇叭怎么没有声音? 小轿车上的后备箱音乐喇叭一般是多大寸的? 怎么样碱发脆肚 我想做个放在WINDOWS桌面的,效果类似与QQ空间漂浮饰品或者挂件的应用程序,不知道从哪入手 怎样制作QQ空间里的挂件 生炒脆肚怎么发制 qq空间的那些皮肤和挂件、装饰物是如何制作的;原理是设么??是不是必须经过腾讯的认可才可以 碱发脆肚怎么做 猪肚怎样做才能达到脆嫩的效果 猪脆肚怎么用碱发 发猪脆肚一公斤放多少食用碱? QQ空间挂件怎么制作成自己的? 怎么把图片制作成QQ空间里的挂件 有的QQ空间有可以强制聊天的挂件是怎么弄的?? 怎么设计QQ空间带挂件的模板呢? 传统豆酥糖的做法步骤图,传统豆酥糖怎么做 鲜猪肚做脆肚可以用陈村梘水腌制吗 怎样胀发猪肚怎样让猪肚变厚 猪肚怎么煮发得更大 折糖果皮怎么做 单用户beamforming除了GOB和EBB还有什么线性算法 波束形成和music有什么关系