当前位置: 首页 > 面试题库 >

使用JavaScript编写HTML的正确方法是什么?

孔俊捷
2023-03-14
问题内容

我在一些帖子中看到人们document.write()在编写动态HTML时不喜欢在javascript中使用。

为什么是这样?什么是 正确的 方法是什么?


问题答案:

document.write()仅在最初解析页面和创建DOM时才起作用。浏览器到达结束</body>标记并且DOM准备就绪后,就不document.write()能再使用了。

我不会说使用document.write()是正确的还是不正确的,这仅取决于您的情况。在某些情况下,您只需要document.write()完成任务即可。查看如何将Google
Analytics(分析)注入大多数网站。

准备好DOM之后,您可以通过两种方式插入动态HTML(假设我们要向中插入新的HTML <div id="node-id"></div>):

  1. 在节点上使用innerHTML:

    var node = document.getElementById('node-id');
    

    node.innerHTML(‘

    some dynamic html

    ‘);

  2. 使用DOM方法:

var node = document.getElementById('node-id');
var newNode = document.createElement('p');
newNode.appendChild(document.createTextNode('some dynamic html'));
node.appendChild(newNode);

使用DOM API方法可能是纯粹的处理方式,但innerHTML事实证明,这样做速度更快,并且已在jQuery之类的JavaScript库中广泛使用。

注:<script>将要成为你的内部<body>标记这个工作。



 类似资料:
  • 问题内容: 这个问题应该比关于更多。 我有一个子类(在python 2.7中,numpy 1.6.2),并且我发现在对象时未列出的字段名称(因此,ipython的自动完成功能无效)。 为了修复它,我尝试在子类中重写,如下所示: 结果是:。(我发现这里实际上应该在python 3.3中工作…) 作为一种解决方法,我尝试了: 据我所知,这是可行的,但当然并不优雅。 问题: 后一种解决方案对我而言是否正

  • 我想使用OpenCV对现有HDR图像执行算术运算,然后在中写入HDR文件。hdr格式。算术运算对这个问题并不重要,所以让我们假设我想读一个。hdr文件,然后将其写入相同的格式。 我尝试用通常的方法,首先读取hdr文件 然后写为 我使用Mac的Finder和OpenHDRViewer来查看HDR图像。当我运行上述代码时,Mac finder能够正确地显示文件。但是当我尝试使用OpenHDRViewe

  • 问题内容: 即使在使用Java Swing一年以上之后,对我来说,它仍然像魔术一样。如何正确使用BufferStrategy,尤其是方法? 我想添加一个JFrame和一个Canvas,然后进行绘制。我还希望能够调整()画布的大小。每次我调整Canvas的大小时,似乎都会被浪费掉,或者变得毫无用处,因为在上使用并没有真正做任何事情。另外,它具有怪异的不确定性行为,我不知道如何正确同步它。 这就是我的

  • 问题内容: 我想在Linux上使用该机制。我希望我的应用程序知道何时更改了文件。能否请您提供给我一个示例,该怎么做? 问题答案: 文档(来自具有inotify的Monitor文件系统活动) 在C API 提供了三个系统调用来构建各种文件系统监视器: 在内核中创建子系统的实例,并在成功和失败时返回文件描述符。与其他系统调用一样,如果失败,请检查诊断。 顾名思义,它增加了一块 手表 。每个监视都必须提

  • 问题内容: 需要帮助,以了解如何在UIKit中使用prepareForReuse()。该文件说 您只应重置与内容无关的单元格属性,例如Alpha,编辑和选择状态 但是如何重置单个属性属性(例如isHidden)呢? 假设我的单元格有2个标签,我应该在哪里重置: 标签文本 label.numberOfLines label.isHidden 我的tableView(_:cellForRowAt :)

  • 一段时间以来,我一直试图将我的tableview工作作为一种电子表格,通过背景线程进行更新,当单元格更新时,它会亮起几秒钟(更改样式),然后返回到原始样式。我已经知道,我不能直接在表格单元格中存储和设置样式,我需要某种支持类来保存这些数据。但是tableview“重用”单元格(使用相同的单元格处理不同的数据)的行为真的很奇怪。当所有单元格都适合屏幕时,它对我来说完美无瑕,但一旦我放置大约100个单