小编Mat*_*ner的帖子

所有以前缀开头的元素的CSS选择器

我有几种聚合物元素。

<ps-el-one/>
<ps-el-two/>
<ps-el-three/>
<ps-el-four/>
Run Code Online (Sandbox Code Playgroud)

我希望能够使用CSS选择器或javaScript查询以“ ps-”开头的所有元素。

我提出了以下解决方案,但我想知道是否还有更有效的方法?

var allElementsOnPage = document.querySelectorAll('*');
var res = [];
for (var index in allElementsOnPage) {
  var el = allElementsOnPage[index];
  if (el && el.tagName && el.tagName.substr(0, 3) == 'PS-') {
    res.push(el);
  }
}
Run Code Online (Sandbox Code Playgroud)

这种解决方案似乎效率很低。

javascript polymer

6
推荐指数
1
解决办法
1004
查看次数

Threejs raycaster只能近距离工作

我正在关注如何使用光线投射来处理可点击对象的mrdoobs示例.我也查看了许多类似的问题,并尝试了无数的事情.光线投射工作......如果我的距离小于1.

Raycaster设置为接近0且远无穷远(默认值).我还没有看到任何设置距离的代码示例.

我希望有另一双眼睛.

// snippet
glow.clickables = [];
var cubeGeo = new THREE.CubeGeometry(2, 2, 2);
cubeGeo.computeFaceNormals();
var cube = new THREE.Mesh(cubeGeo, redmat);
cube.position.y = 10;
cube.position.x = 0;
cube.position.z = -12;
cube.overdraw = true;
glow.Vis.scene.add(cube);
glow.clickables.push(cube);
onclick_();

var onclick_ = function() {
    $('#world').on('mousedown', function(e){
        var mouseX = (event.offsetX / $('#world').width()) * 2 - 1;
        var mouseY =  - ( event.offsetY / $('#world').height()) * 2 + 1;
        var vector = new THREE.Vector3(mouseX, mouseY,  0.1); //what should z be set to?
        //console.info(vector); …
Run Code Online (Sandbox Code Playgroud)

three.js

5
推荐指数
2
解决办法
4864
查看次数

标签 统计

javascript ×1

polymer ×1

three.js ×1