Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
JavaScript Rapha和xEB;l、 共享相同功能的多个阵列_Javascript_Arrays_Raphael - Fatal编程技术网

JavaScript Rapha和xEB;l、 共享相同功能的多个阵列

JavaScript Rapha和xEB;l、 共享相同功能的多个阵列,javascript,arrays,raphael,Javascript,Arrays,Raphael,javascript新手,使用Raphaël库。我使用的SVG图像有一组不同颜色的正方形。我想为每种颜色提供不同的设置(如bluepath、pinkpath),并共享相同的悬停和单击功能。弹出框工作正常,但我不确定如何加入多个阵列以共享相同的悬停和单击功能。如果有人能帮助我,我将不胜感激……:) arr=newarray(); for(BluePath中的var块){ var obj=r.path(bluepath[block].path); 对象属性(属性); arr[obj.id]=块,属性

javascript新手,使用Raphaël库。我使用的SVG图像有一组不同颜色的正方形。我想为每种颜色提供不同的设置(如bluepath、pinkpath),并共享相同的悬停和单击功能。弹出框工作正常,但我不确定如何加入多个阵列以共享相同的悬停和单击功能。如果有人能帮助我,我将不胜感激……:)

arr=newarray();
for(BluePath中的var块){
var obj=r.path(bluepath[block].path);
对象属性(属性);
arr[obj.id]=块,属性={
填写:“#00CCFF”,
笔划:“#3899E6”,
“笔划宽度”:1,
“笔划线条连接”:“圆形”
}
}
arr=新数组();
用于(PINKPATH中的var块2){
var obj=r.path(pinkpaths[blocktwo].path);
对象属性(属性);
arr[obj.id]=blocktwo,属性={
填写:“#00F”,
笔划:“#3899E6”,
“笔划宽度”:1,
“笔划线条连接”:“圆形”
}
对象悬停(函数(){
动画({fill:'#fff'},300);
},函数(){
动画({fill:attributes.fill},300);
})。单击(函数(){
document.location.hash=arr[this.id];
var point=this.getBBox(0);
$('#map')。下一步('.point')。删除();
$('#map')。在($('.addClass('point'))之后;
$('.point').html(蓝路径[arr[this.id]].name).prepend(
$('').attr('href','#').addClass('close').text('close'))
).预编(

$(“查看Raphaël的
集合
,它是一个逻辑组,能够获得多个形状,设计用于通过一次调用操作多个对象。这似乎非常适合您的需要

示例:

您可以使用
set
s将事件处理程序绑定到多个形状,如下所示:

var set=paper.set();
推(
r、 圆圈(240、120、60),
r、 rect(50100,60,60),
r、 路径('m160 200 l60 80 l-120 0 z')
);    
悬停(
函数(){
//使用悬停的魔力!
},
函数(){
//在悬停时做些疯狂的事情!
}
);

参考资料: