- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个聊天室风格的应用程序,每个条目在收到后都会在客户端上进行处理,然后生成一些 html 来显示它。因为某些消息将嵌入工具提示和其他数据位,这些数据使用 knockout 绑定(bind)来显示。
现在,在查看了所有与此相关的帖子之后,这个问题的答案似乎是:
第一个方法不可行,因为您仅在聊天从服务器传入时创建元素,因此第二个选项似乎是唯一的方法,但这需要调用传入的每条聊天消息。很多人说 ko.applyBindings 可能会产生大量开销,但我认为他们的意思是,如果您要在所有元素上调用它,而不仅仅是针对特定元素。
为了让每个人都在同一页面上,以下是重要区域周围 View 的基本片段:
<!-- ko foreach: {data: ChatRoom.Entries, afterRender: ChatEntryRendered } -->
<div class="entry-content" data-bind="html: ProcessedContent"></div>
<!-- /ko -->
忽略周围的位,它基本上会围绕每个条目循环,添加一个包含 html 的 div,其中包含需要应用 knockout 的绑定(bind)。例如,ProcessedContent
可能类似于:
<span>Some content with a <span data-bind="tooltip: 'Some Content Here'">DYNAMIC</span> bit of <span class="special-text">Content</span></span>
因此,上面的 html 当前不会被 foreach 处理,因为它是动态应用于页面的,并且在每个人开始担心将 html 注入(inject) View 之前,服务器不会发送任何标记,它只是发送下来一个带有大量标记的字符串,客户端将其转换为 html。另外,在这种情况下,ChatRoom.Entries 对象会时不时地被 knockout ,因此在任何给定时间它都会在 0-200(通常是 100-200)个条目之间波动,并且其余的聊天条目缓存在本地存储中,因此在任何给定时间 View 的绑定(bind)条目永远不会超过 150 个。
这是一个 jsfiddle,在实际示例中显示了该问题。
最佳答案
html
绑定(bind)不绑定(bind)插入的 html 的主要原因是它可能不安全。但如果您知道它是安全的,则可以使用确实绑定(bind)内容的自定义绑定(bind)。这是另一个 SO 问题的示例:https://stackoverflow.com/a/17756777/1287183
fiddle :http://jsfiddle.net/Mps4Q/9/
关于javascript - 在动态元素上调用 ko.applyBindings 不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18160336/
今天有小伙伴给我留言问到,try{...}catch(){...}是什么意思?它用来干什么? 简单的说 他们是用来捕获异常的 下面我们通过一个例子来详细讲解下
我正在努力提高网站的可访问性,但我不知道如何在页脚中标记社交媒体链接列表。这些链接指向我在 facecook、twitter 等上的帐户。我不想用 role="navigation" 标记这些链接,因
说现在是 6 点,我有一个 Timer 并在 10 点安排了一个 TimerTask。之后,System DateTime 被其他服务(例如 ntp)调整为 9 点钟。我仍然希望我的 TimerTas
就目前而言,这个问题不适合我们的问答形式。我们希望答案得到事实、引用资料或专业知识的支持,但这个问题可能会引发辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visit the
我就废话不多说了,大家还是直接看代码吧~ ? 1
Maven系列1 1.什么是Maven? Maven是一个项目管理工具,它包含了一个对象模型。一组标准集合,一个依赖管理系统。和用来运行定义在生命周期阶段中插件目标和逻辑。 核心功能 Mav
我是一名优秀的程序员,十分优秀!