草庐IT

DOM时间监听

全部标签

带有时间拉伸(stretch)的javascript音高转换

我是一名学习JavaScript的初学者。我的网站上有一个与微调频率和行星频率相关的交互式页面,我已经想到了各种项目。我需要能够循环播放我的音频样本.wav文件,但音频样本时间会随着相应的音调变化而延长。我试过myAudio.playbackRate=0.5;播放音频的速度慢了0.5,但音高保持不变。我研究并发现了一些东西。但是如何将preservesPitch设置为false或true?我认为这只适用于“谷歌浏览器”,所以我找到的其他程序在这里:https://github.com/janesconference/KievII/blob/master/dsp/pitchshift.j

javascript - 如何在没有 TestUtils.findAllInRenderedTree 的情况下遍历包括 DOM 组件在内的所有 React 组件?

Reactv0.14将不再提供通过TestUtils.findAllInRenderedTree遍历根组件内所有渲染组件的能力-DOM组件将被排除在外。是否有一些更好的做法遍历根组件内的所有组件? 最佳答案 您可以通过遍历子节点来递归遍历节点。functiontraverse(node,visitor){return_traverse(node,visitor,{level:0,parent:null});}function_traverse(node,visitor,state){visitor(node,state);if(!n

javascript - React.js,特定 Prop 的事件监听器onChange?

我想在React组件上设置this.props.map时触发一个函数-使用ES6类语法定义:exportdefaultclassMapFormextendsReact.Component{...目前,我正在使用componentDidUpdate(),因为它是在设置props时触发的-但它也会由其他不理想的不相关事件触发。另一方面,componentWillReceiveProps()恰好在组件生命周期的早期(this.props.map返回undefined此时)所以我想在this.props.map设置时仅触发一个函数。我缺少一个钩子(Hook)吗?或者可能是某种模式?

JavaScript 添加事件监听器 : 'input' versus 'keyup'

这个问题在这里已经有了答案:What'sthedifferencebetweenkeyup,keydown,keypressandinputevents?(2个答案)关闭6年前。当我想在插入后立即获取文本输入的值时,我会使用“keyup”事件。现在我在CodeReview问题中看到使用事件“输入”来完成相同的任务。CodeReview问题(第5行):https://codereview.stackexchange.com/questions/141937/registration-form-validation-in-jquery我做了一些修改。做了这个演示:varbox=docume

javascript - 当 minDate 和 maxDate 与 Eonasdan datetimepicker 在同一天时,无法选择日期和时间

我在使用bootstrap-datetimepicker时遇到了一个奇怪的行为诉4.17.47。这是我的选择器配置:format:'YYYY-MM-DDHH:mm',showTodayButton:true,useCurrent:false,showClear:true,minDate:moment('{{ts_beg}}'),maxDate:moment('{{ts_end}}')当将minDate和maxDate设置为同一天但时间不同时,假设2018-2-100:00和2018-2-102:00,我无法同时选择日期和时间:有没有人有解决此问题的解决方法?

javascript - Glimmer VM 与虚拟 dom 有何不同?

所以我最近开始研究emberjs,尤其是它的glimmer渲染引擎,并试图了解它是如何工作的。所以我的理解是,GlimmerVM是一个模拟实际DOM并执行功能以对其进行更新的虚拟机。虽然vdom维护DOM状态的内部表示,但glimmerVM没有这样的状态,相反,它执行两组线性指令-一组执行模板的初始渲染,第二组对元素进行更新。这种方法的主要好处是这样我们可以完全绕过JS的解析/编译瓶颈,只需将二进制文件发送到客户端,然后由glimmervm执行。我做对了吗? 最佳答案 如果只是将模板的语言从JS或文本更改为二进制字节码,Glimme

javascript - 如何将事件监听器添加到 chrome 扩展内容脚本中的 google 表格链接?

我正在开发一个chrome扩展程序来打开从不同列到它们分配的选项卡的链接。使用Google应用程序脚本API在chrome扩展中创建工作表的上下文。但是Google应用程序脚本API是一条漫长的道路,我无法避免在单击链接表单时打开和关闭选项卡。现在我想为点击工作表链接/工具提示链接添加一个事件监听器。我已经在使用内容脚本在工作表中插入面板。这是来自(内容脚本)的代码。与链接相关。(function(){letsheetLinks=document.querySelectorAll('.waffle-hyperlink-tooltip-link');for(leti=0;i通过将鼠标悬停

javascript - ExtJS 更改事件监听器未能触发

http://twitter.com/jonathanjulian要求我将此作为问题发布到StackOverflow上然后被其他几个人转发。我已经有了一个丑陋的解决方案,但我按要求发布了原始问题。所以这是背景故事。我们有一个专门为客户端View使用ExtJS的大型数据库应用程序。我们正在为从远程存储加载的行View使用GridPanel(Ext.grid.GridPanel)。在我们的每个界面中,我们还有一个FormPanel(Ext.form.FormPanel),显示一个允许用户从GridPanel创建或编辑记录的表单。GridPanel列绑定(bind)到FormPanel表单元

javascript - 放置 Javascript 片段以在呈现之前更改页面的 DOM 的最佳位置在哪里

我有几个动态页面,我想在页面完全呈现之前更改某些元素。我的代码片段是这样的:document.body.getElementById("change").innerHTML="我无权更改内容服务器端。将代码片段放置在何处以使其在呈现页面之前运行代码的最佳位置?相反,将Javascript放在HEAD中(在window.onload事件中?)或在结束BODY之前(不在事件监听器中)是最优的吗? 最佳答案 恐怕您不太可能在页面呈现之前执行您的脚本。当然,您可以放置​​一个内联脚本并让它在您希望它显示内容的地方使用document.wri

javascript - 检测/拦截 <img> 插入 DOM

我们使用的是这家分析公司提供的第三方分析报告脚本。它将1x1像素的图像添加到DOM中,并在图像的URL中报告数据。我有什么办法可以监控DOM并拦截这个元素并在浏览器请求图像之前更改其“src”属性?我知道这听起来很奇怪,但我们想在这个报告脚本中加入一个功能(脚本被混淆了)。 最佳答案 在非IE浏览器中,您可以使用DOMNodeInserted事件检测DOM节点的插入。我不知道浏览器是否会在触发事件时发出HTTP请求;从快速测试来看,它似乎不在Firefox中。由于这在IE中不起作用,因此无论如何这都不是可接受的解决方案。docume