草庐IT

dom-repeat

全部标签

javascript - 向 DOM 元素添加变量

我想问一下,将自定义变量添加到文档正文元素是否“合法”。例如:document.getElementById('elem1').customVariable='xxx';这段代码可以正常工作,但我不知道它是否“允许”它没有出现在标签的参数列表中,但变量在进一步的代码中可用.. 最佳答案 我认为这可行,但更常见的添加自定义属性的方法是这样的:然后document.getElementById('elem1').setAttribute("data-customVariable","bar");或者如果旧版浏览器在setAttribut

javascript - 在嵌套的 ng-repeat 中过滤复杂对象

我想在嵌套的ng-repeat中过滤对象。HTML:Cityid:{{locations.city_id}}Pincode:{{detail.pin}}Controller:varmyApp=angular.module('myApp',[]);myApp.controller('MyController',function($scope){$scope.search=function(location){if($scope.selectedCityId===undefined||$scope.selectedCityId.length===0){returntrue;}if(loca

javascript - 通过绝对坐标定位 DOM 元素

有没有一种简单的方法来定位“覆盖”(即,在其边界内)具有X/Y坐标对的像素的所有DOM元素? 最佳答案 你可以看看document.elementFromPoint虽然我不知道哪些浏览器支持它。Firefox和Chrome都可以。ItisalsointheMSDN,但我不太熟悉这个文档,所以我不知道它包含在哪个IE版本中。更新:要查找以某种方式位于此位置的所有元素,您可以假设父元素的所有元素也位于此位置。当然,这不适用于绝对定位元素。elementFromPoint只会给你最前面的元素。要真正找到其他元素,您必须将最前面元素的dis

javascript - Angular .js : two-way binding inside ng-repeat

我正在开发Angular应用程序。我想生成一个表单,其中包含任意数量的文本输入字段,并为每个单独的输入字段提供双向绑定(bind)。没有按钮,没有观察者。ng-model由于范围界定而无法正常工作(如果我没记错的话)。输入字段是从带有ng-repeat的数组生成的,如下所示:{{item.name}}我只想要一个简单的绑定(bind)来根据输入的变化更新Controller中的items数组。感谢任何帮助。 最佳答案 只需更改输入标签,使其显示为:注意ng-model没有花括号。工作代码:http://plnkr.co/edit/C

javascript - 在 DOM 中动态重新加载 ng-repeat 数据

我认为有以下代码:{{i.id}}我想要ng-repeat当从items添加/删除新值时动态触发.就像,如果一个新元素被添加到items的开头那么它应该在开始时动态呈现给DOM,如果一个元素被添加到items的末尾,类似地该项目应呈现为最后一个列表项。DOM的这种动态变化是否可能有Angular? 最佳答案 ng-repeat应该开箱即用。但是,您需要将push或unshift放入数组中,以便正确的watch触发。Angular将通过引用跟踪数组。这是一个workingplunker.HTML:HelloPlunker!{{item

javascript - 为什么以编程方式单击按钮与单击 DOM 时任务/微任务执行顺序不同?

在DOM中单击按钮与以编程方式单击按钮时,微任务/任务队列的执行顺序有所不同。constbtn=document.querySelector('#btn');btn.addEventListener("click",function(){Promise.resolve().then(function(){console.log('resolved-1');});console.log('click-1');});btn.addEventListener("click",function(){Promise.resolve().then(function(){console.log('r

javascript - 查找具有特定文本的 DOM 元素并修改它

我正在尝试弄清楚如何在原始javascript(没有jQuery等)中找到具有特定文本的元素并修改该文本。我的第一个解决方案的化身……还不够。我所做的基本上是:varx=document.body.innerHTML;x.replace(/regular-expression/,"text");document.body.innerHTML=x;我曾天真地以为我成功了,特别是因为它是如此简单。因此,我在我的示例中添加了一个图像,并认为我可以每5秒检查一次(因为这个字符串可能会动态进入DOM)...并且图像每5秒闪烁一次。糟糕。所以,必须有一个正确的方法来做到这一点。一种专门挑出特定DO

javascript - 在 AngularJS 中,如何使一个独立的范围继承自 ng-repeat 的范围

我正在尝试创建一个在ng-repeat循环中接收参数的自定义组件。因此,例如,假设我有一个名为“mycomp”的组件,它在ng-repeat中接收自定义参数“name”:在我的指令中,隔离范围定义如下:scope:{name:"@"}那是行不通的,因为ng-repeat为它迭代的每个元素创建了一个独立的范围。所以我最终得到了两个级别的范围。我该如何解决这个问题?我做错了什么吗?谢谢。 最佳答案 正如我在对您的原始问题的评论中所述,这已经得到解答。无论如何,总结如下:在您的模板中,声明您想要继承的模型,不要使用{{}}(因为使用括号会

javascript - DOM 对象不会成为 jQuery 对象

为什么在下面的例子中我不能让$(frame)成为一个jQuery对象?下面是我从Chrome开发者工具中得到的输出。console:mainFrameoutput:​console:$(mainFrame).contents()output:SyntaxError:Failedtoexecute'querySelector'on'Document':'[objectHTMLFrameElement]'isnotavalidselector.编辑:回复评论...$.toString()"function$(selector,[startNode]){[CommandLineAPI]}"t

javascript - Uncaught Error : NOT_FOUND_ERR: DOM Exception 8 for appendChild call

这个问题在这里已经有了答案:关闭10年前。PossibleDuplicate:javascriptappendChilddoesn'twork错误发生在这段代码的最后一行:varanchor=""+imagename+"";varspecialdiv=document.getElementById("specialdiv");console.log("div:"+specialdiv);specialdiv.appendChild(anchor);真的没有其他事情发生......我验证了specialdiv不是null或类似的东西。任何人都可以解释为什么我在该行收到此错误吗?