小编Her*_*rig的帖子

获取数组中多次存在的值列表

我必须获取数组中多次存在的值的列表。这是当前的代码,但正如您所看到的,它太复杂了。

var arr = [1, 2, 3, 4, 2, 3];
var flag = {}
var exist2arr = [];

for(var i = 0; i < arr.length; i++){
  for(var j = 0 ; j < arr.length; j ++){
     if(i !=j && arr[i] == arr[j]){
       if(!flag[arr[i]])
         exist2arr.push(arr[i]);
       flag[arr[i]] = 1;
     }
  }
}
console.log(exist2arr);
Run Code Online (Sandbox Code Playgroud)

有没有其他方法(使用javascript内置函数的简单代码)来实现这一点?任何形式的帮助表示赞赏。

javascript arrays loops

5
推荐指数
1
解决办法
5901
查看次数

如何在three.js上叠加HTML文本/按钮?

好的,这里的three.js非常新,但我想通过https://beinternetawesome.withgoogle.com/interland实现Google的目标

看 - 他们有他们的FULL SCREEN Three.js场景和他们的文本,按钮(显然是HTML div,不是通过JS生成的)完全覆盖在顶部.

我查看了 https://discourse.threejs.org/t/trying-to-overlay-a-button-and-text-on-top-of-a-three-js-scene/390/2

和类似的问题,但无法理解这样做的正确方法.我不想在Three.js中生成我的UI元素 - 我只想使用HTML.

到目前为止,我生成了我的Three.js画布并将其添加到我的文档中,以便它获取并保持窗口的整个宽度/高度:

var controls, camera, renderer, scene, container, w, h;
renderer    = new THREE.WebGLRenderer()
// container = document.getElementById('canvas');
container = window;
w = container.innerWidth;
h = container.innerHeight;
renderer.setSize(w, h)
renderer.setPixelRatio( window.devicePixelRatio );
document.body.appendChild(renderer.domElement);
Run Code Online (Sandbox Code Playgroud)

然后使用我现有的HTML:

<body>
    <div id="ui">
    <p id="message">Test to change</p>
</div>
Run Code Online (Sandbox Code Playgroud)

无论我如何使用CSS div或UI div的z索引,我都会将UI div卡在最上面:

在此输入图像描述

如何通过覆盖在我的three.js场景上的HTML来实现Google效果?我究竟做错了什么?

我需要我的画布像Google一样填充整个窗口,并且无法实现预先制作画布HTML元素并尝试在JS中附加所有内容.

html javascript css jquery three.js

4
推荐指数
2
解决办法
8079
查看次数

标签 统计

javascript ×2

arrays ×1

css ×1

html ×1

jquery ×1

loops ×1

three.js ×1