小编Pra*_*jee的帖子

在 vis js 网络中设置默认比例

我正在使用 vis.js 库来创建网络拓扑。在我使用以下方法创建网络后:

network = new vis.Network(container, data, options);
Run Code Online (Sandbox Code Playgroud)

其中容器是canvas我正在绘制的。

数据 :

{
    nodes: Nodes,
    edges: Edges
};
Run Code Online (Sandbox Code Playgroud)

选项 :

{ 
    autoResize: true,
    nodes: {
        shape: 'image',
        size:  25,
        font: {
            size: 16,
            color: 'darkbrown'
        },
        borderWidth: 0,
        shadow: true
    },
    edges: {
        smooth: {
            forceDirection: "none"
        }
    },
    physics: {
        forceAtlas2Based: {
            springLength: 80,
            springConstant: 0.27
        },
        minVelocity: 0.75,
        solver: "forceAtlas2Based",
        timestep: 0.34
    },
    layout: {
        randomSeed: undefined
    },
    interaction: {
        hover: true
    }
}
Run Code Online (Sandbox Code Playgroud)

绘制后,默认比例(1)相对于我的画布非常大。我想调整比例。我试过这种方式:

network …
Run Code Online (Sandbox Code Playgroud)

javascript canvas vis.js vis.js-network

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

setInterval、clearInterval 不起作用

我有一个要求,我需要重复调​​用一个调用 setInterval 的函数。我遇到的问题是,如果生成一个函数(比如每 1 秒)并且使用 setInterval 设置它;如果我们调用 setInterval 两次/多次而函数之间没有 clearInterval,则函数会继续调用自身。前任 :

<!DOCTYPE html>
 <html>
 <body>

  <p>A script on this page starts this clock:</p>

   <p id="demo"></p>
   <button onclick="myStartFunction()">Start time</button>
   <button onclick="myStopFunction()">Stop time</button>

<script>

var myVar;
function myStartFunction(){
  myVar = setInterval(function(){ myTimer() }, 1000);
 }

function myTimer() {
var d = new Date();
var t = d.toLocaleTimeString();
document.getElementById("demo").innerHTML = t;
}

function myStopFunction() {
  console.log(myVar);
  clearInterval(myVar);
  console.log(myVar);
}
 </script>

 </body>
 </html>
Run Code Online (Sandbox Code Playgroud)

如果我单击“开始时间”按钮两次,中间没有单击“停止时间”,则该功能不会停止。这只是场景的一个例子。无论如何要解决这个问题?

javascript

0
推荐指数
1
解决办法
518
查看次数

标签 统计

javascript ×2

canvas ×1

vis.js ×1

vis.js-network ×1