草庐IT

the_executable

全部标签

javascript - 浏览器 "drag and drop"事件 : Can anyone fill in the blanks?

直到现在我才真正需要使用任何拖动功能,所以让我向您介绍一下我到目前为止的发现:拖动事件是在用户拖动对象时发生的事件。这是“正确的”操作系统拖动,例如:隐藏一些文本并拖动它,或者甚至从浏览器外部拖入某些内容。据我所知,拖动时不会触发其他浏览器事件。(例如,onmouseover被忽略)。唯一有效的事件是拖动事件。在所有现代浏览器中,onDragEnter和onDragOver似乎都可以工作...但firefox缺少“onDragLeave”。对于拖放,FF使用“onDragDrop”,而IE和其他使用“onDrop”,而Safari似乎不支持它。事件似乎只适用于“可放置”元素,例如文本区

javascript - Javascript 的 "multiple execution contexts"是如何工作的?

Javascript没有可见的线程(但是——工作线程即将到来,请参阅JavaScriptandThreads中的更多信息)。但是,当您有多个FirefoxWindows和多个Firefox/IE选项卡时,它似乎确实有多个似乎同时存在的执行上下文——独立的。当页面上有多个iframe时,每个iframe都有自己的执行上下文,但它们共享数据。如果两个iframe在同一个域中,它们可以访问彼此的DOM并调用彼此的函数。尽管如此,我在谷歌上找不到调度模型的描述,即它是否是:并行/抢占式,在哪种情况下——您可以暂时暂停吗?任何形式的相互排斥?合作,在这种情况下——一个人如何屈服于另一个环境?非重

javascript - 类型错误 : Failed to set the 'buffer' property on 'AudioBufferSourceNode' : The provided value is not of type 'AudioBuffer

我正在处理现有的codoCircle.调低音量。它按预期运行。现在我想在codepen中使用相同的代码我得到这个错误类型错误:无法在“AudioBufferSourceNode”上设置“缓冲区”属性:提供的值不是“AudioBuffer”类型我做了一些研究,找到了firstanswer有用。答案是当我在playSoundplayer.buffer=buffer中分配时,缓冲区仍未定义,因为加载回调尚未触发。这对我来说很有意义,所以我尝试做一个setTimeout像:setTimeout(playSound,9000);没有成功。你知道解决这个问题的方法吗?为什么在CodeCircle中

Javascript 权威指南 : the confusion of steps of converting object to a string

根据Javascript权威指南第6版3.8.3节:Toconvertanobjecttoastring,JavaScripttakesthesesteps:•IftheobjecthasatoString()method,JavaScriptcallsit.Ifitreturnsaprimitivevalue,JavaScriptconvertsthatvaluetoastring(ifitisnotalreadyastring)andreturnstheresultofthatconversion.Notethatprimitive-to-stringconversionsarea

javascript - "JavaScript - the Good Parts"示例的解释(第 4.15 节)?

JS初学者:)需要来自Crockford'sbook的代码片段的解释,第4.15节:varmemoizer=function(memo,fundamental){varshell=function(n){varresult=memo[n];if(typeofresult!=='number'){result=fundamental(shell,n);memo[n]=result;}returnresult;};returnshell;};varfibonacci=memoizer([0,1],function(shell,n){returnshell(n-1)+shell(n-2);}

javascript - ngrx : how the reducers function are invoked, 何时被调用?

我正在尝试使用ngrx库来管理我的应用程序的状态。我浏览了许多ngrx文档和git页面。我理解有三个重要的概念:商店Reducer和行动Store是我们应用程序的单一数据源。因此,对数据的任何修改或检索都是通过Actions完成的。我的问题是当一个Action被发送到商店时到底发生了什么?它如何知道要调用哪个reducer?它是否解析所有注册到商店的reducer?可以有多个同名的Action,在这种情况下会发生什么?提前致谢。 最佳答案 一图胜千言...来源:BuildingaReduxApplicationwithAngular

javascript - 道格拉斯克罗克福德的 "Javascript: The Good Parts"第 5.5 章

我正在阅读书名中的第5.5章。我仍然无法理解如何使用本章中的eventuality函数“我们可以用零件集组合对象”。对象是否由具有“on”和“fire”功能的事件系统组成?本书下面部分的代码:vareventuality=function(that){varregistry={};that.fire=function(event){//Fireaneventonanobject.Theeventcanbeeither//astringcontainingthenameoftheeventoran//objectcontainingatypepropertycontainingthe//

javascript - Chrome 网上商店服务器拒绝带有 "Error : The manifest must define a version."的扩展

注意:这个问题是关于您在进行Chrome开发时使用的manifest.json的version属性。它看起来与下面关于manifest_version的问题类似,但事实并非如此。我真的很想从中吸取教训,但我失败了。NeedtoupdateChromeextensiontomanifestversion2ifnomanifestversionoriginallyspecified?--我目前正在做我的第一个Chrome扩展。强大、有趣、棒极了。除了一件让我烦恼的蠢事。我的Chrome扩展程序是开源的,所以你可以直接转到GitHub上的代码,这样你就可以立即看到我犯了一个愚蠢的错误http

javascript - 立即调用函数表达式 : Where to put the parenthesis?

我看过IIFE的写法:(function(){console.log("docoolstuff");})();还有:(function(){console.log("domorecoolstuff");}());在我使用它们的任何情况下,它们似乎都以相同的方式工作,尽管在某些情况下我被告知一种方法是正确的而另一种是错误的,反之亦然。有没有人有任何可靠的理由或逻辑来说明它是一个订单而不是另一个订单?在某些情况下,在函数体关闭之后但在调用括号发挥作用之前,或者在最后一个右括号之后但之前,是否可能会有更多的事情发生?我主要在Angular模块闭包中使用它们,但似乎无法找到任何真正的理由来采用

javascript - Angular 2 自定义验证器 : check if the input value is an integer?

在Angular2项目中,我需要验证一些输入。如何轻松检查输入值是否为整数?我尝试使用Number(control.value)为空字段返回0-不好。或parseInt(control.value,10)不考虑空格:如果我有类似的东西:1space0,24=1,024它返回1-它通过了验证器没有错误。Lodash函数如:_.isInteger(control.value)或_.isNumeric(control.value)//每次都返回false-这是预期的,因为输入值是字符串而不是数字。像这样组合方法会创建一个包含许多if/else语句的困惑函数,即便如此,我也不确定我是否得到了所