草庐IT

dom-repeat

全部标签

javascript - 为什么 HTML DOM 属性也应该反射(reflect)到 HTML DOM 属性中?

据说是这个articleHTML属性反射(reflect)回DOM的重要原因之一是因为CSS选择器依赖于属性,但这是为什么呢?这可以在没有基于规范的反射的情况下完成。对于不知道我在说什么的人,请阅读以下内容:在浏览器中,CSS选择器依赖于属性来工作。#myButton[someAttribute]{opacity:0.5;font-weight:bold}所以在我们的JavaScript中,如果我们改变一个元素的属性,最终我们必须像这样将它反射(reflect)到HTMLDOM中://wehavechangedsomepropertymyButton.someAttribute=tru

javascript - JavaScript 可以创建无效的 DOM 是否正常?

有点意外,我发现直接插入tbody中的跨度在使用JavaScript(insertBefore)完成时保持原位,如果使用文字HTML创建这种无效的DOM会导致跨度被放置在整个表格之前。我预期要么会出现与文字HTML相同的行为,要么会抛出一些DOM异常。例如这个HTMLTableHeaderfromHTML→goesupTableContents使用这个JavaScript:varspan=document.createElement('span'),tbody=document.querySelector('tbody');span.innerHTML='Createdwit

javascript - 具有数组长度条件的 Angular ng-repeat

我想要ng-repeat仅在photos.length>1时运行这样做似乎行不通:1">有什么快速技巧/优雅的方法可以做到这一点吗?我只需要检查数组长度,除此之外别无其他。我不想通过做这样的事情将数组复制到另一个数组if(oldArray.length>1)newArray=photos;elsenewArray=[];...然后执行ng-repeat在newArray.这似乎效率低下。谢谢。 最佳答案 尝试:1">如果ng-if条件不满足,这些元素将从DOM中移除。参见http://docs.angularjs.org/api/n

html - 使用 ng-repeat 同时循环多个数组

我可以在AngularJs中仅使用一个ng-repeat同时遍历两个数组吗?如果是,那又如何?例如我有两个数组array1=[1,2,3,4,5]array2=[6,7,8,9,10]它应该能够为两个数组生成相同的索引。 最佳答案 如果你想用第一个数组的索引访问第二个数组,试试这个:$scope.arr1=[1,2,3,4,5]$scope.arr2=[6,7,8,9,10]Numberfromarray1={{number}}Numberfromarray2={{arr2[$index]}}请参阅此fiddle:http://js

javascript - 使用 JavaScript 向 DOM 添加元素

我想用JavaScript添加一个元素。我有以下代码:varcollection=document.getElementsByTagName('body');vara=document.createElement('div');a.innerHTML='sometext';collection.item(0).firstChild.appendChild(a);和简单的HTML:错在哪里? 最佳答案 这应该可以满足您的需求:varnewdiv=document.createElement("div");newdiv.appendCh

html - 为什么自关闭 iframe 标记会阻止显示更多 DOM 元素?

在Firefox和Safari上,以下代码仅显示第一个iframe而添加结束标记可以解决问题我不明白为什么它不起作用。当使用DOMParser解析第二个示例时,它无论如何都会转换为自关闭iframe。在这里摆弄:http://jsfiddle.net/hLcukz6p/ 最佳答案 因为iframe元素不是自闭合元素。您使用的Firefox和Safari版本正在处理/>最后就像>并假设它之后的所有内容都包含在iframe中.如果我们试图通过W3C'svalidator传递您提供的代码我们将看到以下错误:Error:Self-closi

JavaScript DOM childNodes.length 也返回文本节点的数量

在JavaScriptDOM中,childNodes.length返回元素和文本节点的数量。有什么方法可以只统计只有元素的子节点的个数吗?例如,div#posts的childNodes.length将返回6,而我期望的是2:anelementnodeanelementnodeatextnode 最佳答案 不直接。文本节点(包括评论等)是子节点。最好的办法是遍历childNodes数组并仅计算具有nodeType==Node.ELEMENT_NODE的那些节点。(并编写一个函数来执行此操作。)

javascript - jQuery:如何监听 DOM 变化?

是否可能以及如何使用jQuery监听整个DOM树的变化?我的具体问题:我有一个“工具提示”功能,当您在任何html元素上执行hover时,它以时尚的方式显示title属性的内容。但是,当您进行悬停时,浏览器会按照标准在其自己的框中呈现title。我想压制它。所以我想到的是在第一次加载页面时将title属性的内容移动到自定义(HTML5)data-title属性,然后我的工具提示功能将与data-title一起使用。问题是稍后我可能会动态添加/删除/更改HTML,因此我需要“重新绑定(bind)”那些元素-再次更改那些标题属性。如果有一个事件监听器可以为我监听此类更改并自动重新绑定(bi

javascript - AngularJS - 是否可以使用 ng-repeat 呈现 HTML 值?

我将AngularJS与生成html响应的第三方服务一起使用。我想使用ng-repeat将HTML响应呈现为列表,但是Angular将其呈现为文本。是否可以使用ng-repeat渲染HTML属性?我创建了这个jsFiddle来演示我的问题。http://jsfiddle.net/DrtNc/1/ 最佳答案 我认为使用ng-bind-html-unsafe可以满足您的需求。这是一个工作fiddle:http://jsfiddle.net/nfreitas/aHfAp/指令的文档可以在这里找到:http://docs.angularjs

javascript - iframe 如何访问其父 DOM?

中的脚本怎么可能?对包含它的页面有任何概念吗?框架中的脚本可以访问它之外的任何上下文吗?跨域呢?到目前为止,我相信一个完全对包含页面不可知,但我看到了一个与这种信念相矛盾的例子。在中究竟可以做什么,不能做什么?关于包含页面? 最佳答案 如果iframe的内容与其父级具有相同的域,您可以使用parent.document.getElement...从iframe访问父页面DOM。但是你不能跨域(甚至不能跨不同的子域),因为它会导致:UncaughtDOMException:Blockedaframewithorigin"https:/