【发布时间】:2023-04-07 19:00:01
【问题描述】:
再次感谢大家之前的帮助,但我再次需要你们的帮助。 现在我的地图上有标记,就像我想要的那样。但是,现在这些标记需要是可点击的。事实上,他们需要在点击时显示另一个 div(所以需要 jquery)。
我试过这样:
首先,我首先将我的画布放在一个带有 id 的 div 中:
container = document.createElement( 'div' );
container.setAttribute("id", "driedkaart");
document.body.appendChild( container );
然后,通过添加这样的标记:
// ADD SPRITES FOR MARKERS
var pin = THREE.ImageUtils.loadTexture( 'pin.png' );
var marker = new THREE.SpriteMaterial( { map: pin } );
var sprite = new THREE.Sprite( marker );
sprite.position.set( 1.3, 1.9, -1.7 );
sprite.scale.set(0.2, 0.6, 0.5 );
var marker = new THREE.SpriteMaterial( { map: pin } );
var sprite1 = new THREE.Sprite( marker );
sprite1.position.set( -2.3, 1.9, -1.9 );
sprite1.scale.set(0.2, 0.6, 0.5 );
//Group the markers to set them relative to the map
group = new THREE.Object3D;
group.add(sprite);
group.add(sprite1);
scene.add(group);
现在,我想让它们可点击(jquery 已正确链接):
sprite = document.createElement('img');
sprite.setAttribute("id", "Eersteslagomieper");
sprite.src = 'pin.png';
document.body.appendChild(sprite);
这会在画布之后创建 img。但我需要精灵(在地图上)是可点击的。
ps:标记图像还没有设置正确,但不要担心:)
再次感谢
【问题讨论】:
-
我已经查看了 tquery,但是当我链接库时,它给出了很多错误(在 tquery 库文件中),所以恐怕 tquery 不是一个选项。
标签: javascript jquery three.js