草庐IT

html-docs-js

全部标签

javascript - Node.js 和 Socket.IO - 房间问题

考虑多聊天应用程序。用户可以加入多个房间(socket.join(room)),用户可以离开一个房间(socket.leave(room))。当套接字离开房间时,我会通知其他房间参与者。如果socket当前在3个房间,并且他没有以正确的方式离开房间,突然断开与网站的连接,我该如何通知这些房间用户已经离开?如果我使用onsocketdisconnect事件,用户此时将不再在任何房间内。是保留一组单独的用户的唯一方法,还是有一些我没有想到的聪明方法? 最佳答案 在断开连接事件期间,套接字对您的进程仍然可用。例如,这应该有效io.sock

javascript - 在将 Squire.js 与 RequireJS 和 Mocha 一起使用时,如何避免引入全局泄漏?

我正在使用Backbone和Backbone.Marionette编写单页JavaScript应用程序。我正在使用AMD模块和RequireJS来帮助组织我的代码和管理依赖项。我也在使用Mocha作为我的TDD/BDD测试框架。一切正常,直到我想使用Sinon.JS引入stub、模拟和spy。经过大量搜索,我在testframeworksintheRequireJSwiki上找到了一个页面和Squire.js,这似乎很适合我的需要。但是,当我尝试使用Squire.js加载模块时,Mocha突然报告模块依赖项的全局泄漏。如果我直接使用Require.JS加载模块,则没有泄漏报告。例如,下

javascript - node.js 和 socket.io。 websocket 的传输类型配置?

Thisquestionconcernssocket.ioversions我在两周内测试了nodejs和socket.io。当我开始时,我从客户端的socket.send(message)函数中得到了问题。我无法向服务器发送任何消息。但我仍然可以从服务器接收消息。当我找到服务器端的配置传输时,我解决了这个问题:socket.set('transports',['xhr-polling','jsonp-polling']);一切都很好。现在我也可以向服务器发送消息了。但是我还有个疑问为什么要配置transport。默认socket.io使用这样的websocket传输设置:socket.

javascript - node.js 上的客户端 ssl 授权

我正在尝试使用自签名进行客户端授权。首先,我正在创建证书:CA证书opensslgenrsa-des3-outca.key2048opensslreq-new-x509-days365-keyca.key-outca.crt服务器证书opensslgenrsa-outserver.key1024opensslreq-new-keyserver.key-outserver.csropensslx509-req-inserver.csr-outserver.crt-CAca.crt-CAkeyca.key-CAcreateserial-days365客户证书opensslgenrsa-ou

javascript - 如何检查 HTML 元素的动画?

我想查看分配给特定元素的CSS过渡或JavaScript/jQuery动画。我应该如何在ChromeDevTools或任何其他开发者工具中执行此操作?例如,我访问了一个Google+页面,我注意到当我将鼠标悬停在一张图片上时,它会变灰、放大,并且Angular落会出现一个关闭按钮。正常:悬停:如何查看此行为背后的代码? 最佳答案 右键单击元素选项卡中的html元素,然后选择:悬停选项。现在您可以在右侧样式选项卡中看到应用于特定元素的悬停CSS。请引用屏幕截图 关于javascript-如

javascript - nvd3js 中的堆积面积图 - X 轴溢出

我正在尝试使用类似于此的d3js和nvd3.js实现“堆积面积图”example.此外,我想使用像thisone这样的上下文画笔。选择影响堆积面积图的日期范围。实际上,这已经在起作用了,但是一旦选定的日期范围不包含第一个日期,它就会以某种方式在Y轴的顶部绘制一些线。看看下面的图片:这是我的代码:堆积面积图varmargin={top:10,right:20,bottom:100,left:20},width=960,height=300;varsvg_stack=d3.select("#stack").append("svg").attr("width",width+margin.le

javascript - 如何遍历 HTML DOM?以及如何获取元素的事件、样式和属性(附示例)

编辑2(解决方案)Javascript对于“可能的”javascript方式,请参阅下面的@sabof回答:https://stackoverflow.com/a/22172009/3309243…………JQUERY事件:我很快制作了一个示例函数getEvents(),但它似乎有效:)属性:我在互联网上的某个地方找到了这个,通过使用.attr()返回所有属性另外,我刚刚发现了有关在浏览器中进行调试的知识,因此现在知道如何查看对象。可能有人想知道如何:打开您的控制台(在FireFox中至少为f12)并在控制台命令行中键入例如$("body")(一直在底部),单击返回的对象并查看控制台:P

javascript - Three.js - 如何检查对象是否对相机可见

我很难弄清楚什么是检查Object3d是否对相机的眼睛可见的最佳方法。我在屏幕中间有一个球体。一些立方体随机添加到它的表面上。我需要的是一种方法来检查相机的眼睛可以看到哪些立方体(在球体的前半部分)以及哪些立方体是不可见的(在球体的后半部分)。到目前为止,我所发现的似乎是正确的方向-但我一定遗漏了THREE.Raytracer类的某些内容。这是我正在使用的代码的fiddle:jsfiddle.我已尽力使其尽可能清楚。fiddle的这一部分可能包含错误代码:varraycaster=newTHREE.Raycaster();varorigin=camera.position,direct

JavaScript 内存泄漏 (Node.js/Restify/MongoDB)

更新4:通过在函数外部实例化restify客户端(参见controllers/messages.js)并在每次请求后调用global.gc(),内存增长率似乎已降低很多(每10秒约500KB)。然而,内存使用量仍在不断增长。更新3:遇到这篇文章:https://journal.paul.querna.org/articles/2011/04/05/openssl-memory-use/可能值得注意的是,我将HTTPS与Restify结合使用。更新2:将下面的代码更新为当前状态。我试过用Express替换Restify。遗憾的是,这没有任何区别。似乎链末端的api调用(restify->

javascript - JS Canvas - 以指定 Angular 画线

我想制作一个应用程序,让球按照鼠标击中它的Angular移动。因此,如果您从左上象限以30度Angular向下滑动鼠标(我猜那将是180-30=150度Angular),它会以这种方式击球。我一直在这样画我的线条:functiondrawAngles(){vard=50;//startlineat(10,20),move50pxawayatangleof30degreesvarangle=80*Math.PI/180;ctx.beginPath();ctx.moveTo(300,0);ctx.lineTo(300,600);//x,yctx.moveTo(0,300);ctx.line