将其他DOM元素添加到Backbone中的视图

时间:2012-08-13 05:06:15

标签: dom view backbone.js

我处在一种情况下,我正在操纵视图的子元素,而不确定我是否正确处理它们。这个具体的例子是我有一个旋转木马,左右按钮在某些事件上消失(例如,如果你在一个方向到达旋转木马的末端)。为了操纵这些物体,我一直在做这样的事情,但感觉不对:

$(this.el).find('.right-paddle').hide();

或者在某些情况下,在实例化期间调用类似的东西:

this.rightPaddle = $(this.el).find('.right-paddle');

这样我以后可以这样做:

this.rightPaddle.hide();

这是不好的形式吗?

1 个答案:

答案 0 :(得分:2)

  

为了操纵这些物体,我一直在做类似的事情   这个,但感觉不对:

为什么不呢?这有什么不对?写得太多了吗?视图绑定到“父”DOM元素,并且通常它们中包含一些必须找到的子项或元素才能操作它们。这完全有效

  

或者在某些情况下,在实例化期间调用类似这样的东西:   如果您经常引用它,那么缓存实例是一个好习惯,因为DOM遍历很昂贵。在你的情况下,它似乎完全有效。

     

这是不好的形式吗?

没有。有不止一种方法可以做到这一点。做什么使您的应用程序更易于维护和可读,并且不一定会争取过早优化或难以阅读的代码,除非它的性能非常关键(尽管应该仍然易于阅读)。

这有助于减轻您的顾虑吗?