arcmag,
В js принято называть переменные в camel case, не надо подчеркиваний.
var allVideo = [];
var VideoDesigner = function VideoDesigner(myVideoBlock){
this.video = myVideoBlock.querySelector("video");
this.playPause = myVideoBlock.childNodes[5].childNodes[1];
this.stopV = myVideoBlock.childNodes[5].childNodes[3];
this._setHandlers();
};
VideoDesigner.prototype._setHandlers = function () {
this.playPause.addEventListener("click", this.fPlay.bind(this), false);
this.stopV.addEventListener("click", this.fStop.bind(this), false);
};
VideoDesigner.prototype.fPlay = function(){
this.video.play();
};
VideoDesigner.prototype.fStop = function(){
this.video.pause();
};
window.onload = function(){
Array.prototype.forEach.call(document.getElementsByClassName("videoBlock"), function (myVideoBlock) {
allVideo.push(new VideoDesigner(myVideoBlock));
});
};
Постарайтесь убрать из кода цифры, понимание которых затрудняет код. Дайте кнопке плейПауза особый класс и тогда "myVideoBlock.childNodes[5].childNodes[1]" превратится в "myVideoBlock.querySelector(".особый класс")". Ото сильно упростит понимание вашего кода и убережот от ошибок по невнимательности.
Подчеркивание перед методом означает что это приватный метод, и пользоваться им может только его владелец (но это условности)
Примерно так это должно выглядеть. Симпотичнее, верно?