草庐IT

javascript:如何调试键盘事件

想象一个使用自定义键盘事件处理程序的Web应用程序,它可能会进行事件冒泡或事件捕获。有没有办法(例如Firefox/Firebug插件)调试每个击键/键盘事件,比如:显示事件类型和所有属性跟踪调用了哪个javascript方法在事件冒泡的情况下调用了进一步的方法澄清我的问题:我不知道存在哪些方法处理程序以及它们的定义位置-这正是我想要找出的。 最佳答案 您可以尝试使用Firebug+Eventbug可视化通风孔扩展名。有关不同浏览器中键盘事件的一般概述,请尝试以下操作:http://unixpapa.com/js/key.html

javascript - 我们如何以编程方式在 javascript 中进入和退出全屏模式?

Here'sdocumentationonexitingfullscreenmode.我使用了这段代码,我学会了让浏览器进入全屏模式(它有效),但我尝试修改它的一个版本以退出全屏模式失败了。处理这些非标准API有点棘手,每个浏览器的实现方式都有所不同。代码如下://Bringthepageintofull-screenmode-Works!functionrequestFullScreen(element){//Supportsmostbrowsersandtheirversions.varrequestMethod=element.requestFullScreen||element

javascript - 当我的 RegEx 被执行并且与输入不匹配时,浏览器选项卡卡住

接下来就是问题了。我创建了一个具有验证的输入字段,这是有效数据:1-12、14、16、22、25-35、41、49、55-901230-1992,2001-2099,99311-2131,3,4,5,6,10全部基本上,这些数字的任意组合(范围、逗号分隔的范围、逗号分隔的数字、逗号后的空格、逗号后没有空格、单词:'all')我的正则表达式:/^(([0-9]{0,4},?\s{0,})+([0-9]{1,4}-[0-9]{1,4}){0,},?\s{0,})+$|^(全部)$|^([0-9]{1,4}-[0-9]{1,4}){0,},?\s{0,}$/它几乎可以正常工作,只有1个主要问

javascript - 为什么 window 或 document 不能设置为 undefined 或 null?

这可能是个愚蠢的问题,但我还没有找到答案。为什么我们不能做到以下几点?window=undefined或document=undefined我知道这些是全局变量并且在浏览器中可用,但考虑到JavaScript的工作原理,这不可能吗?每次我们尝试访问它们时都会重新评估它们吗?我也很想知道window或document对象如何在将它们设置为随机值后保持原样...可能是number或undefined或null。 最佳答案 根据thestandard:ThewindowattributemustreturntheWindowobject'

javascript - 请求 header 中 "no javascript"的常用表达方式是什么?

我想告诉服务器浏览器不支持javascript。最常用的方法是什么?(什么header最常见?) 最佳答案 HTTP协议(protocol)没有定义任何此类header。所以你可以使用自定义的。喜欢:X-JAVASCRIPT-ENABLED:false当然,您也可以使用您喜欢的任何其他header。顺便问一下,为什么服务器会关心客户端是否支持javascript?我的意思是这是客户的责任。标记是向不支持javascript的客户端提供替代内容的好方法。 关于javascript-请求he

javascript - 将 javascript 注入(inject) zombie.js

你好,我想知道Nodejs和zombiejs是否有能力将javascript文件注入(inject)headless浏览器,类似于你可以用phantomjs做的事情。例如在phantomjs中你会这样做:page.injectJs("amino/TVI.js")我使用过phantomjs,它确实做了我想要它做的事情,但是由于使用phantomjs需要大量内存,我正在测试其他选项。 最佳答案 您可以将脚本标签附加到文档对象中,因为它支持zombie中的DOMAPI。下面的例子展示了如何将jquery插入zombie主页:varBrow

javascript - 创建可在浏览器和 nodejs 中使用的 typescript 库

我想创建一个可以在浏览器和nodejs中使用的库。为了争论起见,假设这是我的图书馆:exportdefaultclassMyClass{publicgetString():string{return"Message";}}目前浏览器不支持ES2015模块,我不想在浏览器中依赖requirejs或任何其他模块加载器-我希望仅通过使用包含生成的.js文件来使用这个库脚本标签。感觉用内部模块就可以实现我想要的东西(不想污染全局命名空间)。但是,当我将代码包装在namespace/module中时,我很难将其编译为commonjs模块。实现我想要的目标的正确方法是什么?或者,可能是,作为一个t

javascript - 如何使用 Angular 2 检测用户不活动?

我正在尝试创建一个Angular应用程序,其中包含用户在几分钟不活动后需要注销的视频。如果用户正在正常或全屏观看视频,则无需注销。如果选项卡处于非事件状态并且正在播放视频,我需要他在处于非事件状态后注销。 最佳答案 最简单的方法是使用idlejs.它与Angular配合得很好,它包括Typescript的.d.ts绑定(bind)。import{Idle}from'idlejs/dist';//withpredefinedeventson`document`constidle=newIdle().whenNotInteractive

javascript - 是否可以检测东亚语言支持?

我正在开发一款需要显示日文字符的javascript内存游戏。是否有检测对亚洲语言或日语的支持的跨浏览器方法?window.navigator.language将设置为浏览器的语言,但会漏掉那些未将日语设置为浏览器语言的用户(?)。 最佳答案 Isthereacrossbrowserway(s)ofdetectingsupportforasianlanguages,orjapanesespecifically?您的意思是“是否安装了日语字体”?因为现代操作系统可以配置的“支持亚洲语言”的唯一其他方面是与是否知道像Shift-JIS这

javascript - 单线程 Javascript 中的 AJAX 实现

如果Javascript不是多线程的,如何使AJAX请求异步?实现浏览器是特定的吗? 最佳答案 浏览器执行模型基于“事件循环”的概念。只有一个线程服务事件(稍微过于简单化)。当事件发生时,处理程序将按顺序调用。Ajax只是一种引发特定事件的机制。设置HTTP请求是同步的,但只是设置它。浏览器通过在发生这种情况时触发事件来响应代表服务器返回数据的网络通信。现代浏览器稍微复杂一些,因为每个窗口都可能有自己的进程(或者一般来说,是其他一些系统级“线程”结构)。此外,新的“webworker”功能允许独立的类似线程的隔间同时运行。