1. 程式人生 > >js面向物件例項(實現簡易版拖拽)

js面向物件例項(實現簡易版拖拽)

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
<style>
#div{
width: 100px;
height: 100px;
background: red;
position: absolute;
top: 0;
left: 0;
}
</style>
</head>
<body>
<div id="div"></div>
</body>
</html>
<script>
function fn(){
this.div = document.getElementById('div');
this.init();
}
fn.prototype.init = function(){
var _this = this;
this.div.addEventListener("mousedown",fnDown);
function fnDown(e){
_this.dirX = e.pageX - this.offsetLeft;
_this.dirY = e.pageY - this.offsetTop;
document.onmousemove = function(e){
_this.fnMove(e);
}
document.onmouseup = function(){
_this.fnUp();
}
}
}
fn.prototype.fnMove = function(e){
var _this = this;
_this.div.style.left = e.pageX - _this.dirX + 'px';
_this.div.style.top = e.pageY - _this.dirY + 'px';
};
fn.prototype.fnUp = function(){
document.onmousemove = document.onmouseup = null;
};
var fn1 = new fn();
</script>

相關推薦

js面向物件例項(實現簡易)

<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Document</title> <style>#div{width: 100px;h

面向物件方法實現簡易計算器

#計算器 面向物件寫法 import tkinter class jsq: #初始魔術方法 def __init__(self): self.a = False self.root = tkinter.Tk()

js面向物件實現元素

window.onload = function(){ var obox = new Drag('box'); var obox1 = new Cdrag('box1'); obox.in

實現簡易的moment.js

date對象 hour getdate git .get ice ace -m mon   github源碼地址: www.baidu.com   作者: 易憐白   項目中使用了時間日期的處理方法,只使用了部分方法,為了不在引入第三方的庫(moment.js),這裏自己封

JS實現簡易備忘錄

1、概述 實現像手機便籤一樣功能的簡易版備忘錄頁面,該備忘錄全部用JQuery提供的功能實現,非常簡單易懂。 2、功能介紹 (1)簡潔的頁面,主介面僅提供兩個按鈕用於新增和刪除記錄; (2)新增完成的多條記錄,支援批量選擇刪除; (3)每條記錄支援點選行內進行修改; (4

JS面向物件--物件建立例項

一.此例項主要進行了面向物件以建構函式方式建立的簡單應用 html+css <!--css部分--> #wrap{width:500px;height:500px; border:1px solid red;position:relative;} #

JS實現簡易貪吃蛇小遊戲(純js程式碼)

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html> <head&

JS實現簡易富文字編輯器

<table border='1' class="tablebox" id='tablebox'> <tr> <td> <input type="button" name="bold" value='Bold' clas

面向物件+jquery實現功能

<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title></title> <style

js面向物件思想封裝功能,相容pc和移動端

我們在開發專案過程中,很可能會碰到頁面上某塊需要可以拖拽移動的功能需求,網上已經有不少前輩分享了相關功能的案例,外掛或者程式碼,但是考慮到專案功能需求,我們可能僅需要實現拖拽移動功能就可以,不需要其他功能,而網上很多外掛往往附帶了其他功能需求。這裡筆者僅對拖拽移

JS面向物件輪播圖實現

// 面對過程寫法//var pci=document.getElementById('pci'); //var ul=document.getElementById('ul'); //var li=document.getElementsByTagName('li'); //var left=documen

js面向物件---

<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title></title>

ES6學習筆記(三):教你用js面向物件思維來實現 tab欄增刪改查功能

前兩篇文章主要介紹了類和物件、類的繼承,如果想了解更多理論請查閱《ES6學習筆記(一):輕鬆搞懂面向物件程式設計、類和物件》、《ES6學習筆記(二):教你玩轉類的繼承和類的物件》,今天主要來分享關於如何用js面向物件的思維來實現tab欄的一些相關的功能。 要實現的功能分析 點選tab欄可以切換效果 點選

cookie結合js 實現記住的

div 位置 highlight cti top mov type logs 加載 哈嘍!!!我胡漢三又回來啦!!!有木有記掛挪啊!咱們今天說一個 cookie結合JS的小案例哦! 話不多說直接上代碼: <!DOCTYPE html> <html>

Vue初體驗——用Vue實現簡易TodoList

一個 link this clas 教程 show success gen strong 最近在學習Vue,斷斷續續看完了官方教程的基礎部分,想練一下手熟悉一下基本用法,做了一個簡易版的TodoList 效果: 代碼: HTML: 1 <!DOC

js實現鼠標的效果

郵箱 gin start ott borde mouse ora mar mooc 拖拽效果在我們上網的過程中是很常見的,大家都應該在電腦上面登陸過qq吧,當這個qq的登陸框彈出來的時候,我們是可以進行拖動的。這就是一個拖拽效果 這是我在慕課網上面看到的,我直接拿過來了,地

原生js面向對象實現簡單輪播

get 輪播效果 his 基本實現 詳細 bottom style 距離 簡單的 平時中我習慣用jquery寫輪播效果,實現過程不是很難,也很方便,為了加深對js面向對象的理解,我打算用面向對象實現一個簡單的輪播,這裏采用了字面量的方式實現。為了實現這個過程,我們要自己動手

通過 JS 實現簡單的功能並且可以在特定元素上禁止

如何 alt targe 但是 mes 並且 mod closed demo 前言 關於講解 JS 的拖拽功能的文章數不勝數,我確實沒有必要大費周章再寫一篇重復的文章來吸引眼球。本文的重點是講解如何在某些特定的元素上禁止拖拽。這是我在編寫插件時遇到的問題,其實很多插件的拖

JavaScript 面向物件程式設計實現

JavaScript 面向物件程式設計實現 本文主要講述js面向物件的實現方式(繼承) 面向物件本來就是把某些問題(邏輯),用物件的方式描述,使得業務邏輯能更加清晰,提高維護性,降低實現複雜度。 面向物件的三大特徵:封裝,多型,繼承。(JavaScript 是沒有多型的特性的

原生js面向物件程式設計-選項卡(自動輪播)

<!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8"> <title>原生js面向物件程式設計-選項卡(自動輪播)</title> <