js實(shí)現(xiàn)鼠標(biāo)拖動(dòng)圖片并兼容IE/FF火狐/谷歌等主流瀏覽器
更新時(shí)間:2013年06月06日 17:08:41 作者:
js實(shí)現(xiàn)鼠標(biāo)拖動(dòng)圖片做了兼容IE,F(xiàn)F火狐,谷歌等主流瀏覽器,具體實(shí)現(xiàn)代碼如下,感興趣的朋友可以參考下哈,希望對(duì)你有所幫助
注意使用preventDefault防止瀏覽器的默認(rèn)事件操作發(fā)生
<script language="javascript" type="text/javascript">
var isDrag = false;
function isIE(){
if(navigator.userAgent.indexOf("MSIE")>0){return true;}
else{return false;}
}
function addListener(element,e,fn){
if(isIE()){element.attachEvent("on" + e,fn);}
else{element.addEventListener(e,fn,false);}
}
function drag(e){
var e = e || window.event;
var element = e.srcElement || e.target;
if(e.preventDefault)e.preventDefault();
else e.returnvalue=false;
isDrag = true;
var relLeft = e.clientX - parseInt(element.style.left);
var relTop = e.clientY - parseInt(element.style.top);
element.onmouseup = function(){ isDrag = false; }
document.onmousemove = function(e_move){
var e_move = e_move || window.event;
if(isDrag){
element.style.left=e_move.clientX - relLeft + "px";
element.style.top=e_move.clientY - relTop + "px";
return false;
}
}
}
window.onload = function()
{
var element = document.getElementById("elimg");
var element2 = document.getElementById("eldiv");
addListener(element,"mousedown",drag);
addListener(element2,"mousedown",drag);
}
</script>
<div id="eldiv" style="width:140px;height:100px;background:#EEE;position:absolute;left:117px;top:124px"></div>
<img id="elimg" style="left:609px;top:113px;position:absolute" src="http://www.cnit618.com/template/images/logo.gif" />
復(fù)制代碼 代碼如下:
<script language="javascript" type="text/javascript">
var isDrag = false;
function isIE(){
if(navigator.userAgent.indexOf("MSIE")>0){return true;}
else{return false;}
}
function addListener(element,e,fn){
if(isIE()){element.attachEvent("on" + e,fn);}
else{element.addEventListener(e,fn,false);}
}
function drag(e){
var e = e || window.event;
var element = e.srcElement || e.target;
if(e.preventDefault)e.preventDefault();
else e.returnvalue=false;
isDrag = true;
var relLeft = e.clientX - parseInt(element.style.left);
var relTop = e.clientY - parseInt(element.style.top);
element.onmouseup = function(){ isDrag = false; }
document.onmousemove = function(e_move){
var e_move = e_move || window.event;
if(isDrag){
element.style.left=e_move.clientX - relLeft + "px";
element.style.top=e_move.clientY - relTop + "px";
return false;
}
}
}
window.onload = function()
{
var element = document.getElementById("elimg");
var element2 = document.getElementById("eldiv");
addListener(element,"mousedown",drag);
addListener(element2,"mousedown",drag);
}
</script>
<div id="eldiv" style="width:140px;height:100px;background:#EEE;position:absolute;left:117px;top:124px"></div>
<img id="elimg" style="left:609px;top:113px;position:absolute" src="http://www.cnit618.com/template/images/logo.gif" />
相關(guān)文章
js+css實(shí)現(xiàn)文字散開(kāi)重組動(dòng)畫(huà)特效代碼分享
這篇文章主要介紹了js+css實(shí)現(xiàn)文字散開(kāi)重組動(dòng)畫(huà)特效,需要的朋友可以參考下2015-08-08JS實(shí)現(xiàn)頁(yè)面內(nèi)跳轉(zhuǎn)的簡(jiǎn)單代碼
這篇文章主要介紹了JS實(shí)現(xiàn)頁(yè)面內(nèi)跳轉(zhuǎn)的簡(jiǎn)單代碼,需要的朋友可以參考下2017-09-09BootStrap實(shí)現(xiàn)文件上傳并帶有進(jìn)度條效果
這篇文章主要介紹了BootStrap實(shí)現(xiàn)文件上傳并帶有進(jìn)度條效果,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友可以參考下2017-09-09JavaScript實(shí)現(xiàn)淘寶網(wǎng)圖片的局部放大功能
這篇文章主要為大家詳細(xì)介紹了JavaScript實(shí)現(xiàn)淘寶網(wǎng)圖片的局部放大功能,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-05-05微信小程序在地圖選擇地址并返回經(jīng)緯度簡(jiǎn)單示例
這篇文章主要介紹了微信小程序在地圖選擇地址并返回經(jīng)緯度,涉及微信小程序針對(duì)經(jīng)緯度地址信息相關(guān)操作技巧,需要的朋友可以參考下2018-12-12JS實(shí)現(xiàn)定時(shí)自動(dòng)消失的彈出窗口
這篇文章介紹了JS實(shí)現(xiàn)定時(shí)自動(dòng)消失的彈出窗口,文中通過(guò)示例代碼介紹的非常詳細(xì)。對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2022-04-04JavaScript利用切片實(shí)現(xiàn)大文件斷點(diǎn)續(xù)傳
斷點(diǎn)續(xù)傳即在文件上傳期間因?yàn)橐恍┰蚨鴮?dǎo)致上傳終止時(shí),下次再次上傳同一個(gè)文件就從上一次上傳到一半的地方繼續(xù)上傳,以節(jié)省上傳時(shí)間。本文將利用切片實(shí)現(xiàn)大文件斷點(diǎn)續(xù)傳功能,快來(lái)跟隨小編一起學(xué)一學(xué)吧2022-03-03