草庐IT

Simple_HTML_DOM

全部标签

javascript - HTML 4 等同于 HTML 5 的 FileReader?

我有一个网页需要能够从运行浏览器的本地计算机将文件加载到DOM中。我发现使用HTML5文件API很容易做到这一点。我可以做到:varreader=newFileReader();reader.onload=function(fileContents){...loadcontentstoadiv...}reader.readAsText(f)//wherefisanHTML5Fileobject烦人的是,我需要它在IE7和一些不支持API的早期版本的Firefox中工作。有什么简单的方法可以在旧版浏览器中将本地文件加载到DOM中吗?非常感谢! 最佳答案

javascript - 窗口调整大小触发的 DOM 事件

我的页面布局相当复杂。最初打开页面时,某些元素的对齐有问题。但是,可以通过更改浏览器窗口的大小(永久地)解决此问题。显然我不希望用户必须调整浏览器窗口的大小才能使页面正确显示,所以我想知道是否有一种方法可以在页面首先加载?更新我发现以下代码将触发附加到窗口调整大小事件的任何处理程序:if(document.createEvent){//W3Cvarev=document.createEvent('Event');ev.initEvent('resize',true,true);window.dispatchEvent(ev);}else{//IEdocument.fireEvent('

javascript - AngularJS $http HTML 解析器

总而言之,我们正在使用AngularJS开发一个网络应用程序,并且我们有一个用例/需求(根本不会经常发生),我们需要从静态服务器检索完整的HTML文档。但是,$http对象似乎返回原始HTML字符串作为其“数据”。我们试图避免使用外部库(例如jQuery),但我们需要将原始HTML字符串解析为可查询的DOM对象。我们可以使用iframe并完成它,但出于众所周知的原因,我们也试图避免使用iframe。所以,问题是:AngularJS是否有一个HTML解析器(就像它对JSON一样)?或者,处理这种情况的最优雅方式是什么?P.S.:我们尝试过筛选Angular的API文档,但老实说,它们是碰

javascript - 从 DOM 中删除同级元素时创建 block 元素的平滑过渡

我有一个容器,其工作方式类似于macos中的通知-元素被添加到队列并在特定超时后删除。这很好用,但有一个不和谐的视觉副作用。当它们从DOM中移除时,UI会出现参差不齐的更新,因为堆栈中的下一个元素会填充前一个元素所造成的空白。我希望堆栈中下面的元素能够顺利地向上移动到该空间,最好使用css3,但添加一个transition:all0.5sease-in-out到.notice当其兄弟被移除时,类对该对象没有影响。最小的JS交互:$('#add').click(function(e){e.preventDefault();$('#container').append('Notice#')

javascript - 循环 html2canvas

我在尝试在for循环中实现html2canvas脚本时遇到了一些麻烦。我正在编写一个Javascript函数,它使用数据数组来修改一组元素的样式,将容器div捕获为Canvas,将其转换为图像,将其附加到文档主体,然后继续到数组的下一个索引。我遇到麻烦的部分是在循环的最后:html2canvas(document.getElementById("background"),{onrendered:function(canvas){varimgdata=canvas.toDataURL("image/png");varobj=document.createElement("img");ob

javascript - 为什么 ▶ 的 HTML 符号在 document.title 中不起作用

我尝试在设置document.title时使用►但它没有呈现播放符号,只是显示了那些相同的字符。我可以将▶直接粘贴到有效的代码中。我很好奇为什么第一种方法行不通。谢谢! 最佳答案 ►是HTML实体引用,但是document.title不包含HTML;它包含纯文本。例如,如果我设置document.title至Helloworld,它会按字面意思显示,而不是显示Helloworld。这同样适用于任何其他HTML片段,包括实体引用。明确地说,您可以在title中包含实体引用标签。解析页面时将解释它们。然而,document.

javascript - HTML 修改后无法恢复选择,即使是相同的 HTML

我正在尝试存储对contentEditable元素的选择并在以后恢复它。我想观察paste事件并像以前一样存储HTML,清除html,然后在选定位置手动插入粘贴的文本并进行一些更改。看看这个例子:jsfiddle.net/gEhjZ当您选择文本的一部分时,点击store,再次删除选择并点击restore,它按预期工作。但是当您第一次点击store时,然后通过点击overwritehtml将HTML替换为完全相同的HTML,然后尝试restore,没有任何反应。我认为使用.cloneRange()会有所作为,但事实并非如此。即使对象的深拷贝($.extend(true,{},oldRan

javascript - 使 HTML 输入字段仅显示为字段中的文本

我有一个HTML表单,其中包含许多input字段,这些字段使用jQuery在每个字段中动态添加内容。是否可以隐藏这些字段是输入字段的事实,只显示为字段中的内容?我不想隐藏整个字段和它的内容---只是隐藏它是一个输入类型字段这一事实。我试过jQuery的hide()和$('#foo').css('display','none'),但这隐藏了整个字段。想法是可以有大量字段,但我不希望用户看到所有输入文本字段。 最佳答案 从这样的事情开始:input{border:none;outline:none;background-color:tr

DOM元素数组的Javascript拼接

varmyArray=[];myArray=document.querySelectorAll('.selected');当我调用myArray.splice-它是未定义的。我怎样才能避免这种情况?我需要从该数组中删除一些DOM元素。 最佳答案 问题是querySelectorAll(..)返回一个节点列表(NodeList)--而不是标准的JS数组。也许你想要像下面这样的东西:Array.prototype.slice.call(document.querySelectorAll('.selected'),,);更新我错过了您要删

javascript - FireBug DOM 颜色是什么意思?

我对这些颜色感到困惑。我注意到在FireBugDOM树的左侧栏中显示了4种颜色:粗体黑色黑色大胆的绿色绿色在右侧栏中:蓝色红色大胆的绿色绿色代表对象结构的多个颜色元素。这些颜色代表什么?为什么,例如,我可以访问window.document.URL而我不能访问控制台中的window.document.body,即使它们都在DOM树中的“非粗体黑色”类别中?非常感谢 最佳答案 这是正确答案。BoldBlackObjectsBlackDOMobjectsgetingray"Getter"functionsBoldgreenUserfun