小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

用javascript寫了個(gè)可以拖拽的小窗口程序

 odz521 2006-04-17

用javascript寫了個(gè)可以拖拽的小窗口程序

不知道大家有沒(méi)有上過(guò)周博通這個(gè)網(wǎng)站 http://my./
上面的面板可以自由拖拽和隱藏關(guān)閉 很酷的效果 不過(guò)都是模仿國(guó)外的哈
最近看了很多這種類似的站點(diǎn) 比如MS的http://www./
發(fā)現(xiàn)有一個(gè)趨勢(shì) 就是用戶自定義的東西越來(lái)越多 并且越來(lái)越高級(jí)
就是所謂的web2.0吧 不過(guò)話又說(shuō)回來(lái) 在中國(guó)要想推行這樣的風(fēng)潮 可能還要過(guò)段時(shí)間
因?yàn)橹袊?guó)大多數(shù)網(wǎng)民的文化層次還不到這個(gè)水平
閑話不多說(shuō)了 給大家介紹一下我寫的這個(gè)程序 看了效果以后模仿的 不過(guò)還是有很多bug哈

首先介紹一下這個(gè)程序的一些相關(guān)事件和方法:

event.button:事件發(fā)生時(shí)表示鼠標(biāo)的動(dòng)作 如果為1則是鼠標(biāo)左鍵 2為鼠標(biāo)右鍵 不過(guò)現(xiàn)在好像MS都已經(jīng)有8個(gè)值了 難道以后鼠標(biāo)的發(fā)展方向是8個(gè)鍵?

parentNode:父節(jié)點(diǎn)

event.ClientX:事件發(fā)生時(shí)的鼠標(biāo)x值

event.ClientY:事件發(fā)生時(shí)的鼠標(biāo)Y值

setCapture()方法:建立對(duì)象和鼠標(biāo)之間的通訊 也就是說(shuō)鼠標(biāo)作用在此對(duì)象上時(shí)才跟蹤鼠標(biāo)

releaseCapture()方法:切斷對(duì)象和鼠標(biāo)之間的通訊

javascript程序如下:
程序代碼 程序代碼

<script>
var move=false; 

function StartDrag(obj) //定義準(zhǔn)備拖拽的函數(shù)
{
 if(event.button==1&&event.srcElement.tagName.toUpperCase()=="DIV")//判斷事件發(fā)生地點(diǎn) 防止無(wú)效拖拽
 {
  obj.setCapture(); //對(duì)當(dāng)前對(duì)象的鼠標(biāo)動(dòng)作進(jìn)行跟蹤
  obj.style.background="#999"; //改變顏色
  move=true;
  } 
}

function Drag(obj) //定義拖拽函數(shù)
{
 if(move)
 {
  var oldwin=obj.parentNode; //定義父對(duì)象
  oldwin.style.left=event.clientX-50;//定義父對(duì)象目前位置
  oldwin.style.top=event.clientY-10;
 }
 
 }

function StopDrag(obj) //定義停止拖拽函數(shù)
{
  obj.style.background="#000"; //改變顏色
  obj.releaseCapture(); //停止對(duì)當(dāng)前對(duì)象的鼠標(biāo)跟蹤
  move=false;
  } 

</script> 

具體html代碼:
<html>
<body>
<style>
body{font-family:Verdana;font-size:11px;color:#333;}
#win1{[position:absolute;left:100;top:100;width:200px;height:150px;border:1px solid #000;}
.title{width:100%;background:#000;height:18px;color:#fff;cursor:hand;} 
 </style>
 
<script>
var move=false; 
function StartDrag(obj)                      
{
 if(event.button==1&&event.srcElement.tagName.toUpperCase()=="DIV")
 {
  obj.setCapture();
  obj.style.background="#999";
  move=true;
  } 
}
function Drag(obj)                  
{
 if(move)
 {
  var oldwin=obj.parentNode;
  oldwin.style.left=event.clientX-50;
  oldwin.style.top=event.clientY-10;
 }
 
 }
function StopDrag(obj)
{
  obj.style.background="#000";
  obj.releaseCapture();
  move=false;
  } 
</script> 
<div id="win1">
<div class="title" onMousedown="StartDrag(this)" onMouseup="StopDrag(this)" onMousemove="Drag(this)" >窗口1</div>
This is a moveable window.<br>
Moreinfo in www.  .
</div>
</body> 
</html> 

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多