草庐IT

javascript - 有没有办法将外部 Javascript 作为 Jasmine 的来源?

我正在尝试配置jasmine.yml(使用jasminegem)以使用从GoogleAPI提供的JQuery,而不是将其本地下载到我的服务器。即:src_files:-ajax.googleapis.com/ajax/libs/jquery/1.6.4/jquery.min.js不幸的是,这似乎不起作用,因为(根据配置文件中的注释)它正在寻找相对于src_dir的文件路径。那这不可能吗?谢谢鲁伊 最佳答案 我最终通过规范助手编写了javascriptinclude-在我的例子中是Livereload脚本:document.write

javascript - 在使用调试器单步执行 JS 时,有没有办法跳过 jQuery/Backbone/Underscore 代码?

当使用Chrome调试器单步调试我的JS应用程序中的代码时,我经常发现自己费力地浏览了我不感兴趣的主干/下划线/jQuery代码。有没有办法单步执行我的代码,但让调试器跳过这些库中的代码? 最佳答案 我刚刚花了三天时间在chrome的调试器中做这件事。诀窍是在Backbone/jQuery/Underscore代码和F8之后的下一行设置断点。喜欢for(_(obj).each(function(v,k,l){console.log(k,v,l);});在for行和console行上设置断点。F11到for行,然后F8然后继续你的步进

javascript - 有没有办法检测访问者在打开新窗口后何时返回您的页面?

有没有一种方法可以使用JavaScript或jQuery检测有人在打开新窗口或标签页后何时返回您的页面?我想创建一个脚本来打开一个新窗口或选项卡,然后在用户返回页面时执行某些操作。谢谢, 最佳答案 是,有。使用jQuery:$(window).bind('focusout',function(){console.log('byebye');});$(window).bind('focusin',function(){console.log('welcomeback!');});编辑1使用alert()并不是最好的主意:p更改为con

javascript - 有没有办法解决我的 Mustache.js 模板中嵌套结构中的名称冲突?

我的Mustache模板(使用Mustache.js)中确实存在名称冲突问题。这个例子说明了这两个问题:我正在传递这些数据:{'recs':{'code':'foo','id':1'childRecs':[{'id':2},{'code':'bar','id':3}]}}进入这个模板:{{#recs}}RecordID:{{id}}{{#childRecs}}Thischildcodeis:[{{code}}]anditsparentIDis:{{id}}{{/childRecs}}{{/recs}}预期:RecordID:1Thischildcodeis:[]anditsparent

javascript - 有没有 jQuery scrollTop 的替代品?

是否有任何替代方法可用于将浏览器滚动到页面顶部的函数?现在我正在使用:$('html,body').animate({scrollTop:'0px'},300);。是否有其他东西,或者不是jQuery的东西? 最佳答案 下面是scrollTop函数的纯JavaScript实现。它使用setInterval作为异步while循环,周期性地递减pageYOffset值,该值表示滚动条相对于页面顶部的位置。需要澄清的是,while循环会阻止页面上的其他脚本运行,并且会立即滚动到顶部,而不管步长值如何。然而,具有50毫秒迭代的setInte

javascript - 有没有办法一次执行所有 Modernizr 测试?

我是Modernizr的新手,我只是在寻找一种简单的方法来检查浏览器的整体兼容性。我已经生成了一个Modernizr脚本来仅测试我的Web应用程序中最重要的组件,它高度依赖于HTML5、CSS3和现代JavaScript方法。有没有办法同时运行所有这些测试?查看文档,我发现有很多方法可以逐一测试每个功能,但我没有看到一次完成所有测试的方法。我希望做这样的事情:伪代码if(Modernizr.testAll()){//Loadsite}else{//Redirecttocompatibilitypage} 最佳答案 事实证明,所有测试

javascript - 有没有办法在不迭代的情况下将匹配元素的 z-index 增加 1?

我必须将所有span类.page的z-index增加1。可以有超过100个匹配元素(在任何情况下都不能超过150)。现在我正在遍历它们中的每一个并通过以下代码更改z-index。$('#mydivspan.page').each(function(){varzi=parseInt($(this).css('z-index'))+1;$(this).css('z-index',zi);});有没有更好的方法来处理它以获得更好的性能。我正在使用jQuery。 最佳答案 一些棘手的方法是,创建新样式varstyle=document.cr

javascript - 有没有办法使用 Javascript 读取 console.log?

标题是不言自明的..有没有一种方法可以使用Javascript读取输出到console.log的任何内容,直到您决定读取它为止? 最佳答案 你可以围绕它做一个代理,比如:(function(win){varncon=win.console;varcon=win.console={backlog:[]};for(varkinncon){if(typeofncon[k]==='function'){con[k]=(function(fn){returnfunction(){con.backlog.push([newDate(),fn,a

javascript - 有没有办法判断函数参数是作为文字还是作为变量传递的?

我有一个函数:functionhello(param){console.log('paramis'+param);}还有两个电话。第一:hello(123)第二个:vara=123;hello(a);是否有任何可能的方法从hello函数中判断param是作为var还是作为文字值传递的?注意:我并不是要以此来解决问题。当然有很多解决方法,我只是想创建一个漂亮的日志记录功能。并且还想了解JavaScript的边界。我有这个想法,因为在JavaScript中我们有奇怪和意想不到的功能,比如通过调用获取函数参数名称的能力:function.toString并解析返回的文本。

javascript - 有没有办法检测 Chrome 的 Devtools 是否使用暗模式?

在来自PAGE而不是来自devtools本身的Javascript中,目前是否有一种方法可以确定Chrome的devtools是否使用暗模式而不是“正常模式”?我确实找到了bugreport对此有评论,但看起来只与Chrome扩展有关。 最佳答案 不,它不可从页面获得。它仅适用于javascript中的扩展:chrome.devtools.panels.themeNameThenameofthecolorthemesetinuser'sDevToolssettings.Possiblevalues:default(thedefaul