我想知道是否可以在同一个脚本中使用多个javascript框架(jQuery,Raphael)(使用jQuery处理事件&ajax并使用Raphael绘图)?
我打算使用基于mochiweb/erlang的服务器逻辑.我可以使用GWT和JSON进行客户端开发吗?或者你推荐像jQuery,PURE和Raphael这样的java脚本库吗?
我正在尝试使用多条路径缩放raphael纸张,但它不能正确缩放.有些部分比其他部分小.例如,如果我试图扩展老虎的例子(http://raphaeljs.com/tiger.html),老虎不能正确扩展,只有老虎的某些部分.
谢谢!
这是我正在使用的代码:
<html>
<head>
<script src="raphael-min.js" type="text/javascript" charset="utf-8"></script>
<script src="tiger.js" type="text/javascript" charset="utf-8"></script>
<script>
window.onload = function () {
var r = Raphael(tiger).scale(0.5,0.5);
};
</script>
</head>
<body>
</body>
</html>
Run Code Online (Sandbox Code Playgroud) 我想在Raphael中创建一个看起来像的球体

我使用Paper.ellipse相同的水平和垂直半径来绘制球体.
我想我需要调整fill属性来实现效果,如图所示.我也想要不同颜色的球体,效果相同.
任何人都可以指出fill拉斐尔有关房产的任何有用的链接,因为我找不到足够的信息?
Raphael元素事件处理程序仅在元素填充时执行.
当元素没有填充时,不会执行Click事件处理程序.对于未填充的元素,鼠标悬停事件的行为方式不同(触发鼠标悬停和鼠标移除).
我的代码:http://jsfiddle.net/U5wda/1/
为什么会这样?
我正试图做出所谓的微调.基本上这看起来像:http://jsfiddle.net/r9KQK/1/
稍后我会有一些音频播放器,当我们在平板电脑上使用它时,这个东西将有助于选择秒.
问题是,当你尝试移动红色圆圈时,它会在通过绿色圆圈的顶部和底部时奇怪地掉落,但不会在0或PI/2处,例如-260 ..- 269和181..190度
只是尝试移动它,你会看到错误.
我的代码有什么问题?
提前致谢
更新
最后更新:http://jsfiddle.net/r9KQK/17/
在这个例子中,我得到0..360范围内的度数.但相反,我应该在我开始拖动的位置和我结束它的位置之间得到delta度,但是我无法计算出数学.我还应该考虑红圈的方向,这样三角洲将是+或 - = \
更新
最后:http://jsfiddle.net/r9KQK/18/
但是代码非常糟糕.虽然现在凌晨2点46分,我有点困,所以......但无论如何我认为它可以更加简化
目前我正在使用RaphealJS库进行一个项目,一切似乎都没问题,直到我遇到这样的问题.
而不是多次这样做:
dolphinIcon[1].click(function() {
this.attr({
stroke: 'black', 'stroke-width': 2,
fill: 'green'
});
alert(1);
});
dolphinIcon[2].click(function() {
this.attr({
stroke: 'black', 'stroke-width': 2,
fill: 'green'
});
alert(2);
});
dolphinIcon[3].click(function() {
this.attr({
stroke: 'black', 'stroke-width': 2,
fill: 'green'
});
alert(3);
});
Run Code Online (Sandbox Code Playgroud)
为什么我不能这样做?
for(var i=0; i<dolphinIcon.length; i++){
dolphinIcon[i].click(function() {
this.attr({
stroke: 'black', 'stroke-width': 2,
fill: 'green'
});
alert(i);
});
}
Run Code Online (Sandbox Code Playgroud)
我只是希望存储在数组中的每个图标都警告()它的索引号,但是当我使用for循环时,无论我点击哪个图标,它总是警告()相同的数字(数组的大小) .我该怎么解决这个问题?
我想沿着弯曲的路径为一条路径(实际上是一组路径,但我会达到这个路径)设置动画.
RaphaelJS 2删除了这个animateAlong方法,原因是我无法辨别.深入了解由Zevan抽象的Raphael文档的齿轮演示,我已经做到了这一点:
//adding a custom attribute to Raphael
(function() {
Raphael.fn.addGuides = function() {
this.ca.guide = function(g) {
return {
guide: g
};
};
this.ca.along = function(percent) {
var g = this.attr("guide");
var len = g.getTotalLength();
var point = g.getPointAtLength(percent * len);
var t = {
transform: "t" + [point.x, point.y]
};
return t;
};
};
})();
var paper = Raphael("container", 600, 600);
paper.addGuides();
// the paths
var circ1 = paper.circle(50, …Run Code Online (Sandbox Code Playgroud) 我正在尝试使用Rahpael库在javascript中创建一些带有文本的按钮.我想知道样式文本的大小,在绘图之前避免这样,这样我就可以创建适当的背景(按钮).另外,我想避免在画布/纸张之外绘制文本(文本的位置是其中心的位置).
我可以使用Raphaels getBBox()方法,但我必须首先创建(绘制)文本来执行此操作.所以我绘制文本以获得大小,以便能够在正确的位置绘制它.这很难看.所以我正在寻找一些通用的方法来估计给定字体,字体大小,家庭的样式文本的度量...
可以使用HTML5画布http://www.html5canvastutorials.com/tutorials/html5-canvas-text-metrics/来完成此操作,但Raphael不使用画布.是否有可能使用Raphael或普通Javascript获取文本指标?
我已经做了很多关于拖拉拉斐尔图书馆创建的对象的例子.现在我正在使用集合,并且还能够编写代码来拖动它们.
现在我的问题出现在旋转对象然后拖动它.
看看这个代码示例:demo
var paper = Raphael('stage', 300, 300);
var r = paper.rect(50,100,30,50).attr({fill:"#FFF"}).rotate(45),
t = paper.text(30, 140, "Hello");
var p = paper.set(r, t);
r.set = p, t.set = p;
p.newTX=0,p.newTY=0,p.fDx=0,p.fDy=0,p.tAddX,p.tAddY,p.reInitialize=false,
start = function () {
},
move = function (dx, dy) {
var a = this.set;
a.tAddX=dx-a.fDx,a.tAddY=dy-a.fDy,a.fDx=dx,a.fDy=dy;
if(a.reInitialize)
{
a.tAddX=0,a.fDx=0,a.tAddY=0;a.fDy=0,a.reInitialize=false;
}
else
{
a.newTX+=a.tAddX,a.newTY+=a.tAddY;
a.attr({transform: "t"+a.newTX+","+a.newTY});
}
},
up = function () {
this.set.reInitialize=true;
};
p.drag(move, start, up);
Run Code Online (Sandbox Code Playgroud)
通过检查DEMO,您可以看到该组是使用旋转的矩形创建的,但是一旦拖动它,它就会回到0度状态.为什么?有解决方案吗