Javascript 按id选择Kineticjs路径
我正在尝试创建一个交互式地图,并一直在探索一些预构建的模板。 在这种情况下,将创建每个国家,并在鼠标悬停在其上时高亮显示。我的问题是,当任何国家都有鼠标悬停时,我该如何让它突出另一个国家,比如巴西。因此,当高亮显示一个国家时,我如何选择另一个对象Javascript 按id选择Kineticjs路径,javascript,kineticjs,Javascript,Kineticjs,我正在尝试创建一个交互式地图,并一直在探索一些预构建的模板。 在这种情况下,将创建每个国家,并在鼠标悬停在其上时高亮显示。我的问题是,当任何国家都有鼠标悬停时,我该如何让它突出另一个国家,比如巴西。因此,当高亮显示一个国家时,我如何选择另一个对象 <body> <div id="container"></div> <script src="http://d3lp1msu2r81bx.cloudfront.net/kjs/js/lib/kinetic-v4
<body>
<div id="container"></div>
<script src="http://d3lp1msu2r81bx.cloudfront.net/kjs/js/lib/kinetic-v4.7.4.min.js"></script>
<script src="http://riskmap.filkor.org/paths.js"></script>
<script src="http://riskmap.filkor.org/gameData.js"></script>
<script defer="defer">
var stage = new Kinetic.Stage({
container: 'container',
width: 1920,
height: 1080
});
var mapLayer = new Kinetic.Layer({
y: 20,
scale: 1
});
var topLayer = new Kinetic.Layer({
y: 20,
scale: 1
});
/*
* loop through country data
*/
for(id in TerritoryNames) {
var path = new Kinetic.Path({
data: TerritoryPathData[id].path,
fill: '#eee',
stroke: '#555',
strokeWidth: 1,
id: id
});
path.on('mouseover', function() {
this.setFill('#111');
this.moveTo(topLayer);
topLayer.drawScene();
});
path.on('mouseout', function() {
this.setFill('#eee');
this.moveTo(mapLayer);
topLayer.draw();
});
mapLayer.add(path);
}
stage.add(mapLayer);
stage.add(topLayer);
</script>
var阶段=新的动力学阶段({
容器:'容器',
宽度:1920,
身高:1080
});
var mapLayer=新的动能层({
y:20,
比例:1
});
var topLayer=新的动能层({
y:20,
比例:1
});
/*
*循环浏览国家数据
*/
for(TerritoryNames中的id){
var路径=新的动力学路径({
数据:TerritoryPathData[id]。路径,
填写:“#eee”,
笔划:'#555',
冲程宽度:1,
id:id
});
on('mouseover',function(){
这个.setFill('#111');
这个。移动到(顶层);
topLayer.drawsecene();
});
path.on('mouseout',function(){
这个.setFill('eee');
此.moveTo(映射层);
topLayer.draw();
});
添加(路径);
}
stage.add(映射层);
阶段。添加(顶层);
在任何时候,您都可以使用
阶段通过其id获取对某个国家的引用。查找:
var Brazil = stage.find("#Brazil")[0];
然后用这个词来突出巴西。干杯-这是一种享受。我发誓我试过了,但谢谢你。