javascript中innerHTML的是与非_第1页
javascript中innerHTML的是与非_第2页
免费预览已结束,剩余2页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

个人收集整理-ZQjavascript中innerHTML的是与非分享:的是与非在前端开发中,为了更好的操纵数据与页面展示,于是有了把技术分离出来,再根据数据和模板去渲染页面的做法。最终生成的(字符串、元素或片段)都要追加到树上或者从树上移除一些元素,而这些是靠、等实现。关于的具体用法就不啰嗦了,如有兴趣可以参考的介绍。相比和的方式,使用的好处也很简单,就是它用起来足够简单。b5E2R。b5E2R。兼容性在长期使用的过程中发现了很多兼容性问题。比如以下,运行以下代码: (); 正常 未知的运行时错误可以发现,一个元素的只能包含文本和内联元素。再看一个例子,同样在以下: () 未知的运行时错误 出错原因就是针对包括在内的部分元素,其是只读的,不能被设置。测试发现,这些元素包括:,和等。类似的问题还有,元素在以下的浏览器设置无效:p1Ean。p1Ean。 (), ; 无报错,但无效解决方案有多种: (); 方案一 (,); 方案二 ();();最诡异的一次是,在以下: (); 未知的运行时错误 未知的运行时错误 正常关于表达式字符串中,标签包含标签,并且和的开始标签和的开始标签之间没有任何字符串,都会报“未知的运行时错误”。以下的浏览器在处理结构上比较严格,为此给我们使用的时候带来了很多不便。对于一些不适合使用的元素,解决方案上,就必须用创建元素(如)和添加元素的方法来设置树的内容。像这样的兼容性还有待发现,总的感觉,特别是以下的浏览器,在使用的时候,要特别考虑兼容性测试。DXDiT。DXDiT。内存泄漏导致的内存泄漏原因,常听到的有“闭包导致内存泄漏”或者“没有解除事件导致内存泄漏”,还有常见的“循环引用”等。的方式设置元素的内容,以移除元素下的子元素。也会产生“没有解除事件导致内存泄漏”和“循环引用”的问题。如:RTCrp。RTCrp。 ();() 循环引用 ;();重置所在的容器的内容,移除;如果循环执行以上代码,就会发现因为的循环引用,所占用的内存没有被释放。还有另外一种情况也会导致内存泄露。5PCzV。5PCzV。 (); ;();循环运行以上的代码,会发现内存节节上升。如果把标签的去掉,内存使用就稳定。可见以上代码也会造成内存泄漏。这种现象产生的条件是:、内存中有一个孤立的元素(),未添加到树中;、该元素的中有标签是绑定事件的;、该元素最后被添加到树中。jLBHr。jLBHr。安全性如前面所说的可以插入正确的语法的字符串,当然也包括标签。只需要在标签上加上属性,并且以一段非包含其他标签的代码插入到中,中的就会被执行。xHAQX。xHAQX。 , (); 由于可以通过以上方式插入并执行脚本,对于把非信任来源的字符串用插入,存在安全性问题,容易受到脚本攻击。LDAYt。LDAYt。小结以上悉数了的各种是非。总的来说,

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论