草庐IT

request-specs-and-capybara

全部标签

javascript - Chrome 扩展 : How to reload/re-execute content script on Ajax request

我正在尝试为某个网站执行内容脚本(插入按钮或更改链接),但我想在用户浏览网站时执行此操作。问题在于网页是在用户浏览时使用ajax请求动态构建的。我之前在编写的扩展程序中解决了这个问题,方法是将我的JavaScript实际注入(inject)到网页中。我想知道是否有更好的选择,除了能够在我的内容脚本中注册一个ajaxComplete事件或类似的东西,以便我可以重新执行。我可以做以下事情:functionlistener(){console.debug("listenerfired.");}document.addEventListener("DOMSubtreeModified",lis

javascript - javascript 中的脚本在 php 中等于 $_SERVER ['REQUEST_URI' ] 是什么?

我想通过附加iframe的javascript将URL传递到另一个域,当退出iframe时,另一个域可以将用户返回到我网站上的上一个页面。如果用php提交exit_url,就是$exit_url="http://".$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI']."&request=example"";我想了解如何将此字符串转换为在javascript中使用。谢谢! 最佳答案 您可以通过附加location.pathname和location.search获得与$_SERVER['REQU

javascript - lodash/js : Filtering values within an object based on regular expressions and getting the highest by comparison

对于下面的json[{"index":"xyz",...},{"index":"abc1234",...},{"index":"xyz",...},{"index":"abc5678",...}...我想分别过滤掉abc值和xyz值。我尝试了以下方法来获取值varx=_.filter(jsonData,function(o){return/abc/i.test(o.index);});它可以提供过滤后的输出。现在我想获得最高的abc值,如果有值abc123,abc444,abc999那么代码应该返回abc999。我可以使用lodash再次循环,但这是否可以在一次调用中完成-在同一个过滤

javascript - 如何使用 Capybara/Poltergeist 在页面上运行一个函数?

我在...中有一个带有JS函数(通过鼠标单击调用)的页面标签。在我进行测试时,我遇到了.click方法多次无法正常工作的问题。因此我决定简单地手动调用该函数。但是,我在Internet上找不到任何资源可以教您如何执行此操作。我想避免点击链接并简单地调用doSumbit('5').谢谢!JS函数是:functiondoSubmit(infoTypeId){document.forms[1].INFOTYPEID.value=infoTypeId;document.forms[1].action=document.forms[1].action+"#"+infoTypeId;documen

javascript - babel-node 安装 "Only RSA and DSA public keys are allowed"

我在安装babel-node时遇到问题npmi-gbabel-node>babel-node@6.5.2postinstall/Users/.../.../node_modules/babel-node>nodemessage.js;sleep10;exit1;/Users/.../.../node_modules/ssh-key-to-pem/index.js:210thrownewError('OnlyRSAandDSApublickeysareallowed');^Error:OnlyRSAandDSApublickeysareallowed 最佳答案

javascript - 无法使用模式为 'navigate' 和非空 RequestInit 的 Request 构造 Request

考虑这个示例index.html文件。testpagenavigator.serviceWorker.register('sw.js');testpage使用此ServiceWorker,旨在从缓存加载,然后在必要时回退到网络。cacheFirst=(request)=>{varmycache;returncaches.open('mycache').then(cache=>{mycache=cache;cache.match(request);}).then(match=>match||fetch(request,{credentials:'include'})).then(resp

javascript - 谷歌可视化堆叠条形图 : colors and labels for each value

我正在使用GoogleVisulaizationAPI来呈现一个图表,该图表显示具有多个值的单行,如下所示:使用以下代码:vardata=google.visualization.arrayToDataTable([['','0%','25%','50%','75%','100%',{role:'annotation'}],['Mood',3,7,20,25,45,'']]);varoptions={isStacked:true,hAxis:{minValue:0}}varchart=newgoogle.visualization.BarChart(document.getElemen

javascript - Chart.js 时间刻度 : set min and max on xAxes

如何在xAxes上设置最小值和最大值?它在yAxes上工作正常,但在xAxes上它没有显示任何行为。我的xAxes使用的是type:'time'。我的xAxis标签也使用了moment对象。但是当我删除类型时间并使用普通数字时它也不起作用。我使用的是Chart.js版本2.2.2。scales:{yAxes:[{ticks:{beginAtZero:false,}}],xAxes:[{type:'time',ticks:{min:moment(1471174953000),max:moment(1473853353000)}}]}Hereisthechart.jsTimeScaledo

javascript - 使用 capybara 捕获浏览器控制台日志

我需要使用Ruby和Capybara捕获浏览器的控制台日志(类别:信息)。到目前为止,我已经尝试使用driver.manage.logs.get(:browser)或(:client)但是,使用它,结果不是我想要的。它给出了selenium和浏览器之间的交互结果,我可以在其中看到我的javascript语句已发送执行,但结果输出无法被捕获。 最佳答案 使用selenium时日志是否可用取决于您使用Selenium的浏览器。如果您使用的是Firefox,那您就不走运了,因为它不支持日志检索API,但是由于您使用的是Chrome,因此可

javascript - 如何在 if 中使用 AND 语句与 javascript?

大家好,我正在尝试运行多个javascript并使用AND语句。当用户单击一个值为“1986”的选项并单击另一个值为“3”的选项时,将出现一些文本。我在if语句中使用了AND语句,但它不起作用。这是我的代码:$(document).ready(function(){$('#main').on('change','.select-box',function(){if($(".select-boxoption[value='3']").attr('selected')&$(".select-boxoption[value='1986']").attr('selected')){$('#de