您好我试图模块化我的JavaScript,并使其面向对象,但我感到困惑时,我试图做与多个实例的组件。面向对象的事件处理的javascript
我的代码看起来是这样的
HTML文件以上
<div id="1" class="home-post-list" data-id="1">
<div class="home-post-list-hide">
</div>
</div>
<div id="2" class="home-post-list" data-id="2">
<div class="home-post-list-hide">
</div>
</div>
的HTML标识(#1,#2)被随机地从服务器生成的。
这是目前(不是OOP)的代码,
$(document).on('click', '.home-post-list', function(e){
var id = $(this).data('id');
var $widget = $("#" + id);
$widget.find('.home-post-list-hide').hide();
});
$(document).on('mouseover', '.home-post-list', function(e) {
var id = $(this).data('id');
var $widget = $("#" + id);
$widget.find('.home-post-list-hide').show();
});
我想让这样的事情。
var HomePostList = function(){
this.$widget = this.find('.home-post-list-hide');
this.init();
};
HomePostList.prototype.init() {
//event handling
}
我希望把它OOP,因为我想要让组件之间的通信,我不必重写$ widget.find的原因(“家庭后列表隐藏”)。隐藏() 多次。
我没跟着。 OOP只是构建代码的一种方式。您在那里显示的任何内容都暗示了OOP,并且通过使用OOP,并不需要您执行服务器端渲染。 –
您可以使用AJAX连接服务器端。 –
我想构建我的JavaScript成为面向对象,目前我只是在一个函数中做一个事件 –