草庐IT

查找项目

全部标签

javascript - 解决在 Chrome 中使用 jQuery 实时过滤 1500 多个项目的问题

我被Chrome/Webkit咬了71305取消隐藏大量节点导致Chrome挂起的错误。(也发生在Safari中)。我正在过滤一个列表项,该列表项将在下拉菜单中包含以下内容:jQuery.expr[':'].Contains=function(a,i,m){return$.trim((a.textContent||a.innerText||"")).toUpperCase().indexOf(m[3].toUpperCase())==0;};varinput=$('input');varcontainer=$('ul');input.keyup(function(e){varfilte

javascript - 我可以通过在对象中定位属性来提高查找速度吗?

我已经看到很多关于访问对象属性的最快方法的问题(比如使用.vs[]),但似乎无法找到是否更快地检索对象中声明的比其他对象属性更高的对象属性字面语法。我正在处理一个最多可包含40,000个属性的对象,每个属性都是一个长度为2的Array。我将其用作按值查找。我知道可能有5%的属性是我最需要检索的属性。为了提高性能(减少查找时间),是否值得执行以下任一操作?在对象文字语法的顶部设置最常用的属性?如果#1没有效果,我是否应该创建两个单独的对象,一个具有最常见的5%的属性,首先搜索那个,如果在那里找不到该属性,则使用所有不太常见的属性?或者,有没有更好的办法? 最佳

javascript - 检查 ng-repeat 中的项目是否已经包含值

我在ng-repeat中绑定(bind)了问答的JSON字符串,现在的问题是我想在ng-repeat中一次显示所有多个答案。这是我的数据。{Answer:"White",AnswerID:967,answer_type:"RADIO",fullquestion:"YourRace",id:6}{Answer:"AfricanAmerican",AnswerID:968,answer_type:"RADIO",fullquestion:"YourRace",id:6}{Answer:"Asian",AnswerID:969,answer_type:"RADIO",fullquestion

javascript - Packery 附加方法添加三个项目。如何添加一项?

我尝试通过click方法动态添加packery项目。除了单击packery添加three新项目外,一切都运行良好。我的问题是如何通过单击添加一个项目?MethodDemo谢谢。编辑页面加载后网格项目为五个。请参见下图。当单击Appenditems按钮时,Packery将添加更多三个项目。请参见下图。片段var$grid=$('.grid').packery({itemSelector:'.grid-item'});$('.append-button').on('click',function(){//createnewitemelementsvar$items=getItemEleme

javascript - 查找离点击点最近的元素

这里需要一些帮助。我是一名UI设计师,不擅长做实验性Web表单设计的数字,我需要知道哪个输入元素最接近网页上的点击点。我知道如何用点做最近邻,但输入元素是矩形而不是点,所以我被卡住了。我正在使用jQuery。我只需要这个小算法的帮助。完成实验后,我会向大家展示我在做什么。更新我想过它是如何工作的。看这张图:每个矩形有8个重要的点(或者说4个点和4条线)。只有x值对水平点(红点)有意义,只有y值对垂直点(绿点)有意义。x和y对Angular点都很重要。橙色十字是要衡量的点——在我的用例中是鼠标点击。浅紫色线是橙色十字与它可能最近的点之间的距离。所以……对于任何给定的橙色十字,循环遍历每个

javascript - 在 Javascript 数组中查找元素的有效方法

我正在使用带有标题的数组。每个标题索引对应于数据库中的一个id,其中包含该给定标题的html。假设我有一个包含其中一个标题的字符串。title="why-birds-fly";titles[]//anarraywhichcontainsallthetitles要使用字符串“title”来获取相应的id,我可以这样做:for(i=0;i我可以使用的另一种方法是创建一个关联数组以及与标题数组完全相反的标题数组。也就是说,它使用字符串作为索引并返回数字。titles_id{blah:0,why-birds-fly:1,blah2:2}然后我可以通过以下方式访问ID:returntitles_

javascript - 在滚动时查找位于可见屏幕(视口(viewport))中间的元素

我需要知道是否有一种方法可以确定div是否位于屏幕中央。HTML:texttext.....text考虑到页面是可滚动的,有没有办法确定div何时位于可见屏幕的中心?所以基本上,当用户向下滚动页面时,应该选择可见屏幕中间的div。谢谢 最佳答案 DEMOPAGEvarfindMiddleElement=(function(docElm){varviewportHeight=docElm.clientHeight,//herei'musingpre-cachedDIVelements,butyoucanuseanythingyouwa

javascript - 在javascript中使用reduce函数查找数组的最小和最大数量

纯属好奇。使用reduce函数,我们可以很容易地分别找到数组中的最小和最大数。就这样:vara=[1,2,3,4,5,1,-1,6,7,8,9,10,2,11];a.reduce(function(prev,cur,index,array){returnprev>cur?prev:cur;});//returns11a.reduce(function(prev,cur,index,array){returnprev鉴于此,为什么这不起作用?vara=[1,2,3,4,5,1,-1,6,7,8,9,10,2,11];varsmallest=0;varbiggest=0;a.reduce(

javascript - 如何在 ReactJS 中使用单击事件从列表中删除项目?

varFilterList=React.createClass({remove:function(item){this.props.items=this.props.items.filter(function(itm){returnitem.id!==itm.id;});returnfalse;},render:function(){varcreateItem=function(item){return({item}remove);};return{this.props.items.map(createItem.bind(this))};}});varFilterApp=React.c

javascript - 将 jQuery 元素保存到 var 会导致在使用时重新查找该元素吗?

所以,我有一些JavaScript/jQuery,看起来像这样:var$foo=$('#bar');$foo.hide();我一直在假设jQuery对给定的选择器进行操作,并将生成的DOM元素保存到var$foo中……据我所知这是真的.但是,调用$foo.hide()会导致jQuery重新寻找#bar元素吗? 最佳答案 不,它不是,在调用$(elem)时进行引用。这就是为什么使用var来存储对元素的引用。将引用存储到var始终是最佳实践,这样下次使用代码时,将使用旧引用,并且无需再次搜索DOM。//referencevara=$('