草庐IT

javascript - 从文件目录结构创建 JSON 数据的高效函数?

如标题所说,我有一个目录结构,我想将它转换成兼容jsTreeusage的JSON格式.所以给定列表的输出输入:./SimpleRootNode./RootNode2./RootNode2/Child1./RootNode2/Child2输出:treeJSON=[{"id":"ajson1","parent":"#","text":"Simplerootnode"},{"id":"ajson2","parent":"#","text":"Rootnode2"},{"id":"ajson3","parent":"ajson2","text":"Child1"},{"id":"ajson4"

javascript - D3和双向数据绑定(bind)

我对使用datadrivendocuments的当前最佳实践和解决方案感兴趣具有双向AJAX数据绑定(bind)的库。更具体地说,我想知道如何d3最好与支持双向数据绑定(bind)的库集成,例如Angular或Knockout.出现的明显冲​​突源于以下事实:d3和AJAX库都将数据插入到DOM,这基本上意味着一个必须包装另一个。 最佳答案 关于DOM上的数据您担心插入DOM的数据。这是一些添加的属性:D3js:__data__,__onmouseover.force,__onmouseout.force,__onmousedown

javascript - 在固定区域随机移动图像

我正在使用此代码在一个区域中随机移动图像。但我需要始终显示至少3张图像。这是我所做的:HTMLImage1Image2Image3Image4Image5Image6jQuery(functionfadeInDiv(){vardivs=jQuery('.fade');varelem=divs.eq(Math.floor(Math.random()*divs.length));if(!elem.is(':visible')){elem.prev().remove();elem.fadeIn(Math.floor(Math.random()*1000),fadeInDiv);}else{e

javascript - 隐藏元素时是否禁用 CSS3 转换?

我注意到(在Chrome43中使用jQuery)当元素有display:none时,转换被禁用。这种在所有浏览器上的标准化行为是jQuery的一个特性,还是生产中不能依赖的东西?当要在延迟函数中更改动画的CSS语句时,将启用转换。TakealookatthisJSFiddle.取消注释第3行或6以自行查看。解决方案:在生产中不能依赖此行为,因为它似乎是优化/设计选择而非规范的产物(根据@AndriyHorens的回答)。相反,您应该使用类打开和关闭动画(transition-property:none)。在Chrome43中,未能使用某个类使它对我来说不可靠。Chrome确实还需要单独

javascript - 如何在浏览器调整大小时触发缩小事件?

我正在为我的测试应用程序使用leafletjs。我需要在调整浏览器大小时触发缩小事件。这是我的浏览器调整大小代码:(function(){$(window).on("resize",resize);functionresize(){"usestrict";if($(window).width()如果要显示map,此代码:L.TopoJSON=L.GeoJSON.extend({addData:function(jsonData){if(jsonData.type==="Topology"){for(keyinjsonData.objects){geojson=topojson.feat

javascript - 初始 handsontable View 不会拉伸(stretch)到正确的宽度

我有一个handsontable对象(实际上是两个对象,都在Bootstrap模式中),它在页面构建后加载了数据。这是一个重复问题的jsfiddlehttps://jsfiddle.net/mtbdeano/w7dofbyy/即使使用stretchH:all选项,表格的大小也太窄了。单击内容后,它们会像变魔术一样调整到正确的列宽。我是否缺少一些初始化参数?加载新数据后如何将其调整为正确的宽度?/*thesetablesareinthemodal*/$('#keyword_table').handsontable({data:keyword_data,rowHeaders:true,co

javascript - CSS随机动画

我的想法是制作一个图像,将其分解成小的部分,这些部分会在飞走时按比例缩小。我已经成功地使用了几个CSS动画-scale+translate3d-(结果不是很好,但这是一个开始)。现在,问题是我希望翻译是随机的。据我所知,有一种涉及JS/Jquery/GSAP的简单方法,还有一种涉及SCSS/Sass的更复杂的方法...我对他们都不熟悉。我找到了一个使用javascript来随机旋转的代码,并且我已将其改编为我的翻译。代码已发布here作为答案。//searchtheCSSOMforaspecific-webkit-keyframerulefunctionfindKeyframesRul

javascript - 经常调用 AjaxComplete

我有这个代码:$(document).ajaxComplete(function(event,xhr,settings){console.log('test');});我打开了chrome网络选项卡,但我只能看到一个条目(状态200)。但是控制台显示:(28)test为什么执行得这么频繁? 最佳答案 ajaxComplete在任何AJAX请求完成时触发,无论它是否成功。200状态代码表示您的请求已正确执行,但是,正如您在jQuerydocs中所读到的那样每次AJAX请求完成时都会触发该回调。因此,您可以检查您的请求重定向到哪个URL

javascript - 将属性应用于多个对象

在对另一个输入字段进行更改后,我无法找出使用jQuery将更改应用到多个输入字段的最佳方法。如果只有1个广告系列ID,则下面的代码有效。然而,当存在多个事件时,我的代码只是将最后一个实例应用于所有事件。我如何更改此设置以分别应用于每个广告系列ID?目标组织状态从“事件”切换为“暂停”。对于每个事件ID:禁用事件状态下拉菜单。如果事件状态为“已续订”,则保留为“已续订”。如果事件状态为“事件”,请切换为“已暂停”。如果事件状态为“已暂停”,则保留为“已暂停”。组织状态从“暂停”切换为“事件”。对于每个事件ID:启用事件状态下拉菜单。保持状态不变。这是代码(请忽略表格!):varcampa

javascript - 我究竟该如何编写回调函数来更改 AJAX 中的全局变量以用于 jquery?

好的,所以我查看了很多答案,但似乎没有一个对我想要实现的目标有帮助。假设我有以下代码:varn=0;$.ajax({...success:function(data){n=Math.floor((Math.random()*10)+1);somefunction(n);}});console.log(n)//nwouldobviouslybe0again我是通过使用async:false使其同步来实现的,但据我所知,这对用户体验不利,因为它会在等待结果时卡住浏览器。在上述情况下,我究竟如何实现回调函数以允许在ajax调用后修改全局变量n? 最佳答案