firefox瀏覽器下javascript 拖動層效果與原理分析代碼
前言
本文主要給大家介紹了關(guān)于firefox下js實現(xiàn)拖動層效果的方法,下面話不多說了,來一起看看詳細(xì)的介紹吧。
firefox下實現(xiàn)可拖動層代碼
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>www.dbjr.com.cn 拖動層效果代碼</title>
<script>
var obj=0;
var x=0;
var y=0;
var ie = (navigator.appVersion.indexOf("MSIE")!=-1);//IE
var ff = (navigator.userAgent.indexOf("Firefox")!=-1);//Firefox
function find(evt,objDiv){
obj = objDiv
if (ff){
x = document.documentElement.scrollLeft + evt.layerX;
y = document.documentElement.scrollTop + evt.layerY;
if (document.documentElement.scrollTop > 0){
y = evt.layerY - document.documentElement.scrollTop;
}
if (document.documentElement.scrollLeft > 0){
x = evt.layerX - document.documentElement.scrollLeft;
}
}
if (ie){
x = document.documentElement.scrollLeft + evt.offsetX;
y = document.documentElement.scrollTop + evt.offsetY;
if (document.documentElement.scrollTop > 0){
y = evt.offsetY - document.documentElement.scrollTop;
}
if (document.documentElement.scrollLeft > 0){
x = evt.offsetX - document.documentElement.scrollLeft;
}
}
}
function dragit(evt){
if(obj == 0){
return false
}
else{
obj.style.left = evt.clientX - x + "px";
obj.style.top = evt.clientY - y + "px";
}
}
</script>
</head>
<body style="margin:0" onmousemove="dragit(event)" onmouseup="obj = 0">
<div id="aaa" style="background-color:red;width:200pt;height:200pt;position:absolute">
<div id="aa" style="width:200pt;height:20pt;background:blue;position:absolute" onmousedown="find(event,document.getElementById('aaa'))"></div>
</div><BR><BR><BR><BR><BR><BR><BR><BR><BR><BR><BR><BR><BR><BR><BR><BR><BR><BR><BR><BR><BR><BR><BR><BR><BR><BR><BR><BR><BR><BR><BR><BR><BR>
</body>
</html>
JavaScript 中一些概念理解 :clientX、clientY、offsetX、offsetY、screenX、screenY
clientX 設(shè)置或獲取鼠標(biāo)指針位置相對于窗口客戶區(qū)域的 x 坐標(biāo),其中客戶區(qū)域不包括窗口自身的控件和滾動條。
clientY 設(shè)置或獲取鼠標(biāo)指針位置相對于窗口客戶區(qū)域的 y 坐標(biāo),其中客戶區(qū)域不包括窗口自身的控件和滾動條。
offsetX 設(shè)置或獲取鼠標(biāo)指針位置相對于觸發(fā)事件的(this)對象的 x 坐標(biāo)。
offsetY 設(shè)置或獲取鼠標(biāo)指針位置相對于觸發(fā)事件的(this)對象的 y 坐標(biāo)。
screenX 設(shè)置或獲取獲取鼠標(biāo)指針位置相對于用戶屏幕的 x 坐標(biāo)。
screenY 設(shè)置或獲取鼠標(biāo)指針位置相對于用戶屏幕的 y 坐標(biāo)。
x 設(shè)置或獲取鼠標(biāo)指針位置相對于父文檔的 x 像素坐標(biāo)。
y 設(shè)置或獲取鼠標(biāo)指針位置相對于父文檔的 y 像素坐標(biāo)。
如圖:圖片來源于網(wǎng)絡(luò)

總結(jié)
以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,如果有疑問大家可以留言交流,謝謝大家對腳本之家的支持。
- js實現(xiàn)可拖動DIV的方法
- js拖動div 當(dāng)鼠標(biāo)移動時整個div也相應(yīng)的移動
- JavaScript實現(xiàn)可拖拽的拖動層Div實例
- 利用javascript移動div層-javascript 拖動層
- html+javascript實現(xiàn)可拖動可提交的彈出層對話框效果
- js之完全兼容ie與firefox的拖動層代碼[測試好用]
- js實現(xiàn)完美拖拽效果可拖動層與回放拖動規(guī)跡并顯示拖動距離參數(shù)
- javascript實現(xiàn)拖動層效果代碼(符合標(biāo)準(zhǔn)且兼容IE,chrome,firefox)
- 一個很酷的拖動層的js類,兼容IE及Firefox
- JavaScript拖動層Div代碼
相關(guān)文章
微信小程序開發(fā)之好友列表字母列表跳轉(zhuǎn)對應(yīng)位置
這篇文章主要介紹了微信小程序開發(fā)之好友列表字母列表跳轉(zhuǎn)對應(yīng)位置的相關(guān)資料,希望通過本文能幫助到大家讓大家實現(xiàn)這樣的功能,需要的朋友可以參考下2017-09-09
Bootstrap標(biāo)簽頁(Tab)插件切換echarts不顯示問題的解決
這篇文章主要給大家介紹了關(guān)于Bootstrap標(biāo)簽頁(Tab)插件切換echarts不顯示問題的解決方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2018-07-07
layui實現(xiàn)form表單同時提交數(shù)據(jù)和文件的代碼
今天小編就為大家分享一篇layui實現(xiàn)form表單同時提交數(shù)據(jù)和文件的代碼,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-10-10

