Raphael带文本标签可拖动的图形实现代码


Posted in Javascript onFebruary 20, 2013

最近准备学学Javascript和Raphaël,实现一个可拖动的矩形,另外矩形上还得显示标签。查了一下网上这个东西还比较冷门。Javascript才学没几天,代码估计写的很烂。

<!doctype html> 
<html charset="utf-8"> 
<head> 
<title>Raphaël - Connectivities</title> 
<script src="raphael-min.js" type="text/javascript" charset="utf-8"></script> 
<script type="text/javascript"> 
function Entity(r, l, t, w, h){ 
this.Label = r.text(l + w/2, t + h/2, "Hello World!"); 
this.Rectangle = r.rect(l, t, w, h, 10).attr({fill:"brown", stroke:"#666", title:"A Rectangle"}).drag(move, Dragger, up).data("cooperative", this.Label).toBack(); 
function Dragger(){ 
this.xx = this.attr("x"); 
this.yy = this.attr("y"); 
this.animate({"fill-opacity": .2}, 500); 
} 
function move(dx, dy){ 
var attr = {x: this.xx + dx, y: this.yy + dy}; 
this.attr(attr); 
var lb = this.data("cooperative"); 
var attr1 = {x: this.xx + dx + this.attr("width") / 2, y: this.yy + dy + this.attr("height") / 2}; 
lb.attr(attr1); 
} 
function up(){ 
this.animate({"fill-opacity": 1}, 300); 
} 
} 
window.onload = function(){ 
var r = Raphael("holder", 620, 420),discattr={fill:"red", stroke:"none"}; 
var entity1 = new Entity(r, 0, 0, 60, 40); 
}; 
</script> 
</head> 
<body> 
<div id="holder"> 
</div> 
</body> 
</html>

实现方法就是将Text作为Rectangle自定义属性,才能控制当拖动的时候,随着Rectangle一起移动。
Javascript 相关文章推荐
fix-ie5.js扩展在IE5下不能使用的几个方法
Aug 20 Javascript
始终在屏幕中间显示Div的代码(css+js)
Mar 10 Javascript
对setInterval在火狐和chrome切换标签产生奇怪的效果之探索,与解决方案!
Oct 29 Javascript
JS判断不能为空实例代码
Nov 26 Javascript
jQuery EasyUI右键菜单实现关闭标签/选项卡
Oct 10 Javascript
Bootstrap在线电子商务网站实战项目5
Oct 14 Javascript
关于javascript sort()排序你可能忽略的一点理解
Jul 18 Javascript
React如何避免重渲染
Apr 10 Javascript
jQuery实现带右侧索引功能的通讯录示例【附源码下载】
Apr 17 jQuery
详解使用jQuery.i18n.properties实现js国际化
May 04 jQuery
Node.js从字符串生成文件流的实现方法
Aug 18 Javascript
vue3自定义dialog、modal组件的方法
Jan 04 Vue.js
IE关闭时判断及AJAX注销案例学习
Feb 18 #Javascript
JS刷新框架外页面七种实现代码
Feb 18 #Javascript
js获取html参数及向swf传递参数应用介绍
Feb 18 #Javascript
用js写了一个类似php的print_r输出换行功能
Feb 18 #Javascript
让ie6也支持websocket采用flash封装实现
Feb 18 #Javascript
当自定义数据属性为json格式字符串时jQuery的data api问题探讨
Feb 18 #Javascript
jQuery筛选器children()案例详解(图文)
Feb 17 #Javascript
You might like
PHP内核探索:变量存储与类型使用说明
2014/01/30 PHP
php使用curl检测网页是否被百度收录的示例分享
2014/01/31 PHP
php数字运算验证码的实现代码
2015/07/30 PHP
PHP时间戳格式全部汇总 (获取时间、时间戳)
2016/06/13 PHP
利用WebBrowser彻底解决Web打印问题(包括后台打印)
2009/06/22 Javascript
JQuery将文本转化成JSON对象需要注意的问题
2011/05/09 Javascript
mailto的使用技巧分享
2012/12/21 Javascript
『jQuery』.html(),.text()和.val()的概述及使用
2013/04/22 Javascript
javascript实现图片延迟加载方法汇总(三种方法)
2015/08/27 Javascript
使用JQuery在线制作ppt并在线演示源码特效
2015/09/08 Javascript
基于jQuery实现的菜单切换效果
2015/10/16 Javascript
浅析javascript的return语句
2015/12/15 Javascript
Javascript的无new构建实例详解
2016/05/15 Javascript
js获取浏览器高度 窗口高度 元素尺寸 偏移属性的方法
2016/11/21 Javascript
js 单引号替换成双引号,双引号替换成单引号的实现方法
2017/02/16 Javascript
利用node.js实现反向代理的方法详解
2017/07/24 Javascript
关于JavaScript的单双引号嵌套问题
2017/08/20 Javascript
vue-swiper的使用教程
2018/08/30 Javascript
vue解决一个方法同时发送多个请求的问题
2018/09/25 Javascript
[45:40]Ti4 冒泡赛第二天NEWBEE vs NaVi 1
2014/07/15 DOTA
python基本语法练习实例
2017/09/19 Python
Python基于更相减损术实现求解最大公约数的方法
2018/04/04 Python
解决Python print输出不换行没空格的问题
2018/11/14 Python
flask session组件的使用示例
2018/12/25 Python
Python实现简单查找最长子串功能示例
2019/02/26 Python
详解Python数据可视化编程 - 词云生成并保存(jieba+WordCloud)
2019/03/26 Python
python3 json数据格式的转换(dumps/loads的使用、dict to str/str to dict、json字符串/字典的相互转换)
2019/04/01 Python
Python实现的插入排序,冒泡排序,快速排序,选择排序算法示例
2019/05/04 Python
在tensorflow下利用plt画论文中loss,acc等曲线图实例
2020/06/15 Python
详解移动端h5页面根据屏幕适配的四种方案
2020/04/15 HTML / CSS
名人珠宝设计师:Melinda Maria Jewelry
2019/03/06 全球购物
size?丹麦官网:英国伦敦的球鞋精品店
2019/04/15 全球购物
铭立家具面试题
2012/12/06 面试题
UNIX文件系统常用命令
2012/05/25 面试题
2014五一国际劳动节活动总结范文
2014/04/14 职场文书
mysql中between的边界,范围说明
2021/06/08 MySQL