小编not*_*ng9的帖子

我的jsfiddle页面返回404(需要注册?)

我认为jsfiddle非常整洁,我昨天用它来帮助堆栈溢出的人.

我创建了一个新的小提琴,点击'保存'并使用这个提供的链接:http://jsfiddle.net/77XLD/1/

这个链接工作到几个小时前,但突然之间,当我再次尝试找到我的旧小提琴时,我得到了一个404页面.他说:

Error 404
We're truly sorry, but there is no such page.
Run Code Online (Sandbox Code Playgroud)

现在我到目前为止还没有注册过jsfiddle.只有在那里注册时,jsfiddle是否会将页面存储无限时间?那么我的页面是否只是"超时"?


编辑(2014年8月11日):该页面又回来了.

jsfiddle

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

setTimeout与0ms之后是否需要clearTimeout?

正如我已经了解的那样(这里:https://www.youtube.com/watch?v = 8aGhZQkoFbQ),在某些情况下,调用setTimeout时延迟0ms(因为事件循环)会很有用.

现在,每当我使用时,setTimeout我也会小心地clearTimeout在适当的位置打电话,以确保没有任何东西留在某处,并在我不希望它被执行的地方执行.

所以我的问题是:clearTimeoutsetTimeout0ms 之后打电话是否有必要(有意义吗?)传递的函数会立即附加到回调队列中,因此我认为clearTimeout不会(也不能)执行任何操作.或者clearTimeout甚至可以从回调队列中删除传递的函数(因此在超时到期之后但在函数执行之前)?

第二个问题:即使它没有做任何事情,clearTimeout在这些情况下总是要求"最佳做法" 吗?

javascript settimeout

7
推荐指数
2
解决办法
4549
查看次数

d3:创建新元素时对selectAll()的困惑

我是d3的新手,正在使用Scott Murray的"互动数据可视化网络"(这很棒),让我开始.现在我所看到的所有内容都按照描述的方式工作,但在查看创建新元素的过程时,让我感到困惑.简单的例子(来自Scott Murray):

svg.selectAll("circle")
    .data(dataset)
    .enter()
    .append("circle");
Run Code Online (Sandbox Code Playgroud)

该名称"circle"用于selectAll返回空选择(这是我学到的).然后将相同的名称加入到圆圈中.append.大!

现在让我感到困惑的是,当你想再次做同样的事情时会发生什么.所以你有第二个数据集,并希望以相同的方式生成新的圆圈.使用相同的代码只是替换数据集显然不会起作用,因为selectAll("circle")不再返回空选择.所以我玩了selectAll一遍,发现我可以使用任何名称,甚至将它留空如下:selectAll()

Scott Murrays示例始终只使用每个数据集的一种类型(圆形,文本等).最后我在官方的例子中找到了类似的东西

svg.selectAll("line.left")
    .data(dataset)
    .enter()
    .append("line")
    .attr ...

svg.selectAll("line.right")
    .data(dataset)
    .enter()
    .append("line");
    .attr ...
Run Code Online (Sandbox Code Playgroud)

现在我的问题是:这个条目是如何selectAll("ENTRY")真正使用的?以后可以用它来再次以任何方式引用这些元素,或者它真的只是一个虚拟名称,可以以任何方式选择并只需要返回一个空选择?我无法在生成的DOM或对象结构中的任何位置找到此条目.

谢谢你让我困惑.

html javascript d3.js

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

标签 统计

javascript ×2

d3.js ×1

html ×1

jsfiddle ×1

settimeout ×1