草庐IT

异步处理

全部标签

javascript - jQuery 是否在两个不同的 CSS 类之间进行动画处理?

我想了解jQuery动画的工作原理。例如,如果我有一个带有CSS的a元素,使它看起来像一个可点击的图像,并且给定的with和height在CSS,我如何安全地为该元素的width和height设置动画?我需要为CSS类中的值设置动画吗?或者我是否需要使用width和height的目标值设置一个新的CSS类,并让jQuery从oldClass动画到新类?或者我可以简单地使用jQuery的.width()和.height()方法,而不管CSS中指定的值是什么?让我感到困惑的是:如果我使用jQuery调整元素的宽度,这是否也会修改我的CSS,或者jQuery/JavaScript是否只是用其

javascript - 测试 Jasmine 中自定义事件的处理

我想确保在触发自定义jQuery事件时,对象的方法作为事件处理程序被调用;但是单元测试似乎返回了假阴性,因为我的实现效果很好。(这是使用TwitterFlight和FlightJasmineextensions的测试套件的一部分,但这只是一个普通的Jasminespy。)describe('listeningforuiNeedsPlanevent',function(){varspy;beforeEach(function(){spy=spyOn(this.component,'getPlan');$(document).trigger('uiNeedsPlan');});it('ge

javascript - rsvp.js 如何使用失败回调链处理被拒绝的 promise

回复:https://github.com/tildeio/rsvp.js我有一个名为doSomething()的函数,它会做一些事情一段时间然后返回一个RSVP.Promise。然后,一连串的成功和失败回调是用返回的promise注册(见下面的代码)。我期望的行为是,如果promise得到履行,成功回调链注册promise将被解雇,如果promise被拒绝(失败),链将触发失败回调。我得到了promise实现时的预期行为,但是我得到了当promise被拒绝时,行为与我预期的不同。那是,成功回调被链接起来,一个成功回调的输出被传递到链中的下一个成功回调。但似乎失败回调没有链接。它们的行

javascript - 处理 ng-repeat 中的重复元素

我正在构建一个具有一种“播放列表”功能的应用程序。这表示带有ng-repeat="elementinplaylist"的ng-repeated自定义指令因为我想允许用户在播放列表中重复使用相同的元素两次,所以我尝试使用trackby$index添加。现在,令人困惑的是:当我从播放列表中删除一个元素时(我有一个函数removeElement(index),它基本上包含如下内容:$scope.removeElement=function(index){$scope.playlist.splice(index,1);}奇怪的事情发生了:该元素已从$scope.playlist中正确删除,但由

javascript - Materialize css select 无法处理 JS 错误

我在使用MaterializeCSS框架选择表单时遇到问题。这是我的表格:ChooseyouroptionOption1Option2Option3MaterializeMultipleSelect$('select').material_select();这是我的slim布局:doctypehtmlhtmlheadmetacontent=("text/html;charset=UTF-8")http-equiv="Content-Type"/titleBudeprace=stylesheet_link_tag'https://cdnjs.cloudflare.com/ajax/lib

javascript - 异步函数不返回值,但 console.log() 执行 : how to do?

这个问题在这里已经有了答案:Howtoreturntheresponsefromanasynchronouscall(42个回答)3年前关闭。我有一个es6类,带有init()方法负责获取数据,转换数据,然后更新类的属性this.data使用新转换的数据。到现在为止还挺好。类本身还有另一个getPostById()方法,只是做它听起来像的事情。这是该类的代码:classPosts{constructor(url){this.ready=falsethis.data={}this.url=url}asyncinit(){try{letres=awaitfetch(this.url)if(

javascript - 为什么我的按钮需要点击两次才能让事件处理程序第一次工作,但之后只需要点击一次?

我希望访问者能够展开/折叠某些部分,并且正在使用:在我的函数中:functiontoggleDiv(a){vare=document.getElementById(a);if(!e)returntrue;if(e.style.display=="none"){e.style.display="block"}else{e.style.display="none"}returntrue;}第一次点击按钮时不起作用,随后的点击(在任何按钮上)都正常。这里有相关对话:Buttonneedstobeclickedtwicetotriggerfunction但我不明白答案(太技术化;-),有人可以

javascript - 单击子元素时如何防止触发单击处理程序?

我有两个div标签,第一个div是父亲,第二个div是儿子在父亲里面是这样的而且我在div父亲中添加了一个事件(onclick),就像这样我的问题是在事件中为什么儿子继承父亲。我希望当我点击父div时执行事件,但是当我点击子时不执行任何操作,因为它没有任何事件。 最佳答案 这是由名为eventbubbling的JavaScript特性引起的.默认情况下,您的事件将“冒泡”到DOM中。当点击一个子节点时,您会自动触发其父节点的点击事件。默认情况下,当点击一个元素时,从内向外冒泡:这意味着首先会触发子元素的click()事件,然后是父元

javascript - 使用回调处理程序在函数内调用父对象方法

我正在调用ParentObject.doSomething(),它会依次调用WebService对象来执行一些ajax调用,并且在ajax调用成功时执行回调函数。但是回调函数中的任何父函数都会失败。我认为这与范围解析有关。我找不到解决此问题的方法。是否有更好的架构风格来模块化ajax服务和模型?我还创建了一个jsfiddle-http://jsfiddle.net/bzKXr/2/varParentObject={doSomething:function(){document.write("InsidedoSomething");varself=this;WebServices.fir

javascript - 异步 Javascript 变量覆盖

代码有一个问题,当调用异步函数时变量被覆盖。如何修复?代码:for(xinfiles){asynchronousFunction(var1,var2,function(){console.log(x.someVaraible);});}现在的问题是,当调用asynchronousFunction中的回调函数时,x.files变量已更新为json数组文件中的下一个变量。我希望变量应该包含以前的值。回调函数中的变量个数不能改变,所以回调函数中不能传变量名。 最佳答案 在javascript中使用“本地”变量的问题是您的变量实际上具有函数