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 相关文章推荐
Jquery 基础学习笔记之文档处理
May 29 Javascript
jQuery随便控制任意div隐藏的方法
Jun 28 Javascript
js动态修改表格行colspan列跨度的方法
Mar 30 Javascript
JS制作手机端自适应缩放显示
Jun 11 Javascript
node.js中格式化数字增加千位符的几种方法
Jul 03 Javascript
js实现返回顶部效果
Mar 10 Javascript
webpack配置之后端渲染详解
Oct 26 Javascript
JavaScript基础心法 数据类型
Mar 05 Javascript
redux-saga 初识和使用
Mar 10 Javascript
微信小程序实现圆形进度条动画
Nov 18 Javascript
Js逆向实现滑动验证码图片还原的示例代码
Mar 10 Javascript
基于Vue实现微前端的示例代码
Apr 24 Javascript
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高手?学会“懒惰”的编程
2006/12/05 PHP
php利用header函数实现文件下载时直接提示保存
2009/11/12 PHP
php对包含html标签的字符串进行截取的函数分享
2014/06/19 PHP
PHP+JS三级菜单联动菜单实现方法
2016/02/24 PHP
PHP文件及文件夹操作之创建、删除、移动、复制
2016/07/13 PHP
PHP不使用内置函数实现字符串转整型的方法示例
2017/07/03 PHP
使用 laravel sms 构建短信验证码发送校验功能
2017/11/06 PHP
Ubuntu中支持PHP5与PHP7双版本的简单实现
2018/08/19 PHP
laravel接管Dingo-api和默认的错误处理方式
2019/10/25 PHP
jQuery 自动增长的文本输入框实现代码
2010/04/02 Javascript
Javascript实现DIV滚动自动滚动到底部的代码
2012/03/01 Javascript
JavaScript执行顺序详细介绍
2013/12/04 Javascript
使用javascript实现json数据以csv格式下载
2015/01/09 Javascript
讲解vue-router之命名路由和命名视图
2018/05/28 Javascript
[01:21]DOTA2新纪元-7.0新版本即将开启!
2016/12/11 DOTA
[03:00]DOTA2-DPC中国联赛1月18日Recap集锦
2021/03/11 DOTA
玩转python爬虫之cookie使用方法
2016/02/17 Python
Python编程实现蚁群算法详解
2017/11/13 Python
Python redis操作实例分析【连接、管道、发布和订阅等】
2019/05/16 Python
Django 对IP访问频率进行限制的例子
2019/08/30 Python
python socket通信编程实现文件上传代码实例
2019/12/14 Python
Python内建序列通用操作6种实现方法
2020/03/26 Python
matlab 计算灰度图像的一阶矩,二阶矩,三阶矩实例
2020/04/22 Python
解决运行django程序出错问题 'str'object has no attribute'_meta'
2020/07/15 Python
英国买鞋网站:Charles Clinkard
2019/11/14 全球购物
什么是命名空间(NameSpace)
2015/11/24 面试题
Linux常见面试题
2013/03/18 面试题
医学生自荐信
2013/12/03 职场文书
软件部经理岗位职责范本
2014/02/25 职场文书
2014年教研活动总结范文
2014/04/26 职场文书
莫言诺贝尔获奖演讲稿
2014/05/21 职场文书
2014国庆黄金周超市促销活动方案
2014/09/21 职场文书
私用公车造成事故检讨书
2014/11/16 职场文书
2014年干部培训工作总结
2014/12/17 职场文书
一年级语文上册复习计划
2015/01/17 职场文书
低端且暴利的线上线下创业项目分享
2019/09/03 职场文书