草庐IT

Reactive编程思想

全部标签

javascript - 以编程方式打开和关闭 Chart.js 工具提示

Chart.js2.2.1知道如何触发当我将鼠标悬停在数据点上时运行的代码,以及当我将鼠标移开时运行的代码吗?我需要以编程方式显示和隐藏图表的工具提示。openTip(oChart,datasetIndex,pointIndex){//howtoopenaspecifictooltip?}closeTip(oChart,datasetIndex,pointIndex){//howtoclosethesametooltip?}如果可以的话,我会展示示例代码,但我什至不知道从哪里开始。chartmethoddocs没有帮助。JSFiddle 最佳答案

javascript - 以编程方式打开 Angular 带日期选择器

我正在使用AngularJS1.2.12和angular-strap2.0.0-rc.2(mgcrea.github.io/angular-strap/),但我找不到从内部打开日期选择器/时间选择器小部件的方法Controller。我想像这样使用带有日历图标按钮的输入组:我现在可以轻松地为按钮提供ng-click功能并从我的Controller打开日历。我只是找不到如何做到这一点的方法。有什么想法吗? 最佳答案 另一种解决方案是将按钮更改为标签,并使用“for”属性。我喜欢它,因为它消除了额外的javascript来打开日期选择器,

javascript - 如何让我的网络浏览器以编程方式说话?

是否可以让网站以编程方式向用户传达欢迎信息?假设我想在成功登录我的网站后向用户打招呼。我知道我可以录制问候消息(即作为MP3)并播放,但我希望能够以编程方式执行此操作,因为所有用户的名称都会不同。例如,我可能想说Welcome,JohnDoe当JohnDoe登录时。我怎么能用普通的javascript做到这一点?注意:这不打算在生产系统中使用,而是打算用作更大的UX实验的一小部分。 最佳答案 对于window.speechSynthesis.speak()要在Chromium浏览器上呈现音频输出,用户需要拥有speech-dispa

javascript - 以编程方式修复 IE 中的浏览器模式

我的网站在包括IE7到9在内的所有浏览器上完全兼容当我在IE-10上尝试时我很震惊,错误太多,而且因为我没有时间为IE-10修复这个问题而且我也在使用第三方控件“Telerik”,我决定尝试一个简单的将Document和浏览器模式调回ie9即可解决。在IE-10的开发人员工具中,如果我手动将文档模式设置为IE9标准并将浏览器模式设置为IE9,所有错误都会消失,我找到了一种强制IE-10使用文档的方法模式:但是浏览器模式呢?有没有办法在渲染之前设置它的值?解决方案:我在这个问题中使用的方式是正确的,但是我的解决方案是更新托管服务器中的窗口,有很多更新,怀疑是:适用于WindowsServ

javascript - 在 vanilla Javascript 中以编程方式触发 keydown 事件

我在keydown上运行的窗口附加了一个事件。我想通过以编程方式敲击键盘上的键的例程(每个间隔)来测试这一点。以下代码不起作用-但如果我实际按下键盘上的某个键,则可以正常工作。我最初尝试过:varevt=document.createEvent("KeyboardEvent"); setInterval(function(){evt.initKeyEvent("keydown",true,true,window,false,false,false,false,13,13);},500);这是我当前的keydown事件:window.addEventListener('keydown',

javascript - D3.js - 以编程方式在 Jasmine 中生成拖动事件

我有一个使用D3和Angular编写的折线图组件。它具有用于更改x轴比例的可拖动条。现在我正在尝试使用Karma/Jasmine测试组件。我在单元测试中无法触发拖动事件。鼠标悬停和单击等其他事件也可以正常触发。我认为这是导致问题的d3中“拖动”事件的综合实现。这是我用来触发拖动的代码(此类代码在测试html页面上触发正确的d3拖动事件,但在单元测试中失败)。varleftBar=element.find(".left-bar")[0];varevObjStart=document.createEvent("MouseEvents");evObjStart.initMouseEvent(

javascript - Webpack 和以编程方式注入(inject)的内容脚本

我正在使用React和Webpack开发Chrome扩展程序。在此项目中,不同的模块将使用chrome.tabs.executeScript(null,{file:'content-script-file.js'})以编程方式注入(inject)内容脚本。这就成了问题,因为我使用Webpack来捆绑所有内容。基本上,后台脚本加载了一些模块,这些模块都配置为在特定情况下以编程方式注入(inject)内容脚本。但是,我不知道如何在捆绑的应用程序中“找到”这些内容脚本。它们从未被显式导入,只是在executeScript调用中被引用。同时contentscripts使用了React,所以需要

javascript - 以编程方式填充 ReactJS 输入的正确方法

我正在构建一个运行JavaFXWebkit的headless爬虫,它肯定没有chrome的v8强大。但是我最近遇到了一些问题,我试图输入一个值来对呈现的输入字段使用react。这是我到目前为止所做的但失败了。[注意:我无法控制源代码/React代码。因为我正在尝试抓取目标网站]jQuery-$('input.r_input').val("2");VanilaJS-document.querySelector("input.r_input").value="2";通过jquery触发器触发更改事件-change、blur、keyup、keydown等。创建一个手动事件,例如:event=

javascript - 如何以编程方式在 DataTables 中打开多行

我以为这个问题会得到解答,但我无法解决这个问题。尝试过:https://datatables.net/forums/discussion/25833/is-there-any-way-to-programmatically-select-rowshttps://datatables.net/reference/api/row().select()我在serverSide中使用DataTables1.10.16|模式-我的数据是通过ajax加载的,而不是在页面加载时加载的。我的标记只是一个带有ID#substancesTable的表格:IDECCASName加载数据的js如下:varsu

javascript - 响应式编程 - 值大于 X 达 N 秒

我有一个流randStream,它每半秒发出一次随机值,还有一个boolStream,它将值从randStream转换为bool值。letrandStream=Kefir.fromPoll(500,()=>Math.random())letboolStream=Kefir.map((rand)=>rand>0.5)我想在boolStream发出true5秒(连续)时发出true。否则emit为假。我正在使用Kefir.js图书馆。你有什么想法吗?谢谢。 最佳答案 在给定条件下,当您知道randStream发出数字的确切速率时,使用.