javascript – 使用更改观察器观察Object.observe()下的本机属性

前端之家收集整理的这篇文章主要介绍了javascript – 使用更改观察器观察Object.observe()下的本机属性前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
现在默认情况下,Chrome中的Object.observe()处于启用状态,我遇到了一些我希望重用浏览器的内置属性(隐藏,标题,可拖动)的情况,但*更改后的观察者不再被调用财产变化.

一个例子是隐藏的:http://jsbin.com/jizikaje/1/edit(从不调用hiddenChanged())

我目前的解决方法是使用attributeChanged()来观察属性更改:

attributeChanged: function(attrName,oldVal,newVal) {
  // Cannot use *Changed watchers for these native properties.
  if (attrName == 'hidden') {
    this.marker.setVisible(!this.hidden);
  }
}

推荐的方法是什么?

BTW,在尝试使用本机属性时发出警告将需要很长时间进行调试:https://github.com/Polymer/polymer/issues/379

解决方法

Object.observe()用于JavaScript的东西,MutationObserver用于DOM元素. MutationObserver在这种情况下可能会更好.
原文链接:https://www.f2er.com/js/157288.html

猜你在找的JavaScript相关文章