【发布时间】:2011-09-25 04:43:06
【问题描述】:
从我对 Flex 的一点经验中,我了解了 Bindable 变量,例如,文本元素的内容会随着变量的值而变化。
我想知道是否可以在 JavaScript 中做这样的事情。例如,假设我有一个想要包含文档标题的<h1 id="big_title">。这可以通过document.getElementById('big_title').innerHTML = document.title; 轻松完成,但如果document.title 发生变化怎么办?我还必须手动更新big_title。
另一种说法,有没有办法在变量而不是 DOM 元素上创建自定义的onchange 类事件处理程序?此处理程序可以根据需要更新标题。
编辑:我知道我可以使用 setInterval 来检查变量“绑定”(在数组中定义)并根据需要进行更新,但这会有点 hack-ish 并且需要在响应性和对性能。
【问题讨论】:
-
嗯,你并没有真正修改变量——你正在改变 DOM。据我所知,您不能将 DOM 元素的文本绑定到 javascript 变量。不过,您可以在触发 javascript 事件时对其进行更新。
-
感谢您提供的链接,但我宁愿拥有一个简单的脚本,也不愿只为其中一项功能提供完整的框架。
-
您可以随时查看源代码。
-
我做到了。即使有所有的cmets,我也无法弄清楚它是做什么以及如何适应它......