草庐IT

模拟IC

全部标签

javascript - 如何在 Nodejs 中模拟 "window"对象?

在浏览器中运行时,所有附加到“window”对象的东西都会自动成为全局对象。如何创建类似于Nodejs中的对象?mySpecialObject.foo=9;varf=function(){console.log(foo);};f();//Thisshouldprint"9"toconsole 最佳答案 您可以为此目的使用预定义对象global。如果您将foo定义为global对象的属性,它将在之后使用的所有模块中可用。例如,在app.js中:varhttp=require('http');varfoo=require('./foo'

javascript - 为什么不模拟 Tab 键按下将焦点移动到下一个输入字段?

备注this题。我看到除了触发tab按键事件之外还有其他方法,但我仍然想知道为什么触发tab按键事件不会将焦点移动到下一个输入字段。CodePenHTMLJS$('textarea').on('keydown',function(e){if(e.metaKey&&e.which===40){console.log('test');$(this).trigger({type:'keypress',which:9});}}); 最佳答案 因为选项卡事件是用于更改焦点的native浏览器事件/操作。.trigger()函数只触发分配给它的

javascript - 使用键盘箭头使用 three.js 进行第一人称模拟

有关我的来源,请访问http://jsfiddle.net/fYtwf/背景我有一个使用three.js的简单3d模拟,其中相机在3维空间中被立方体包围。在对View控件进行编码和测试之前,这些立方体有助于可视化相机正在注视的位置。我想创建一个简单的3D应用程序,通过上、下、左和右控制相机键。就像移动你的头一样问题在我目前的应用中,当面向前方并开始向上看时,我们就成功了。然而,当我们向左转90度,并按下向上箭头时……错误的事情发生了。相机增加了x轴,但是因为我们面对的是另一个方向,单独修改x轴是错误的...现在我假设这是因为需要一些三Angular函数来计算z轴的正确值。但是,我的三A

javascript - 在 RequireJS 环境下模拟使用 Lo-Dash 和 Underscore

在RequireJS环境中,允许某些AMD模块使用Lo-Dash而其他模块同时使用Underscore的最佳方法是什么? 最佳答案 我能够相当简单地自己解决问题。专门为需要Lo-Dash的模块使用lodash路径,为需要“underscore”的模块使用underscore:require.config({paths:{'underscore':'path-to-my-underscore-file','lodash':'path-to-my-lodash-file'}});这样两个库可以同时使用,互不干扰。与普遍的看法和主张相反,

javascript - 如何模拟浏览器的时区?

这个问题在这里已经有了答案:Howtouseacustomtimeinbrowsertotestforclientvsservertimedifference(11个答案)关闭5年前。我想测试网站中的位置功能,为了进行此测试,我需要尝试不同的时区。我使用javascript代码获取时区,调用以下函数:varoffset=newDate().getTimezoneOffset();现在这个函数返回给我180因为我在阿根廷,我需要测试不同的时区。有人知道怎么做吗?非常感谢!!

javascript - 如何用JavaScript模拟点击让当前输入失去焦点

我有一个输入,在某些时候恰好有焦点。如果用户单击页面的“背景”,输入将失去焦点。我试图用下面的代码模拟背景上的点击,但这不起作用(你会注意到输入仍然有焦点)。关于如何编写模拟点击页面“背景”的代码的任何建议?YAHOO.util.Event.onDOMReady(function(){document.getElementById("input").focus();document.getElementById("main").focus();}); 最佳答案 我会想象使用blur()会达到目的:YAHOO.util.Event.o

javascript - 如何对异步 Redux 操作进行单元测试以模拟 ajax 响应

我正在创建一个中间件,用于使用异步操作发出ajax请求。中间件拦截原始操作,执行ajax请求,并重新调度原始操作以及来自url的响应。所以,我的组件只会发送这样的ActiononClick(){dispatch(ActionCreator.fetchUser());}其余部分将由中间件处理,如图所示here.我的问题是,单元测试应该怎么做?我应该模拟onClick本身吗?或者我应该编写一个模拟中间件并使用模拟响应转发操作?我不确定应该采用哪种方法。我试过severalstuff,但我尝试的一切对我来说都没有意义。有什么建议吗? 最佳答案

javascript - 有没有办法在 JavaScript 中模拟点击警报?

我有一个带有iframe的页面,其源页面位于单独的域中。有时,源页面会生成警报。当它这样做时,它会停止正在做的事情,直到用户单击确定以接收警报。我想做的是以编程方式单击此警报上的“确定”,以便源页面可以恢复有用。这可能吗? 最佳答案 JavaScript是单线程的,这意味着当您调用函数时,它会阻塞直到返回。当您调用alert()时,会将控制权传递给决定如何处理它的浏览器。弹出UI对话框的不是Javascript,而是浏览器。直到浏览器收到“OK”事件并返回控制权,alert()才会返回。javascript线程会暂停,直到发生这种情

javascript - 如何在 Jest 中重置手动模拟

我有一个crypto的手动模拟,如下所示://__mocks__/crypto.jsconstcrypto=jest.genMockFromModule('crypto')consttoString:Function=jest.fn(()=>{return{}.toString()})constmockStringable={toString}constupdate:Function=jest.fn(()=>mockStringable)constdeciper={update}crypto.createDecipheriv=jest.fn(()=>deciper)exportdefa

javascript - Angular js-模拟浏览器后退/前进按钮禁用

我正在开发需要模拟浏览器后退/前进按钮的应用程序(我已经实现了2个按钮)。我可以使用window.history.forward()和window.history.back()实现此功能。该功能按预期工作。但是我有一个问题,我需要在没有更多页面可以进一步浏览时禁用前进按钮,反之亦然。我已尝试使用以下解决方法,但没有任何效果。if(!window.history.next){$scope.abcService.enableForwardButton=false;}这个if条件永远不会满足,即使我没有任何页面可以进一步浏览也是如此。varindex=window.history.lengt