Почему не срабатывает событие window resize?

LH
На сайте с 26.09.2013
Offline
89
733

Почему не срабатывает событие window resize?

При изменении окна должна запускаться функция setup(), которая отрисовывает слайдер.


class Slider {
constructor( obj ) {

// ...

this.setup();

this.hasTouch = 'ontouchstart' in window;
this.START_EV = this.hasTouch ? 'touchstart' : 'mousedown';
this.MOVE_EV = this.hasTouch ? 'touchmove' : 'mousemove';
this.END_EV = this.hasTouch ? 'touchend' : 'mouseup';

this.wrap.addEventListener( this.START_EV, this, false );
this.wrap.addEventListener( this.MOVE_EV, this, false );
this.wrap.addEventListener( this.END_EV, this, false );
window.addEventListener( 'resize', this, false );

// ...
}

setup() {
// ... css
}

handleEvent( e ) {
switch ( e.type ) {
case 'touchstart': this.ontouchstart( e ); break;
case 'touchmove': this.ontouchmove( e ); break;
case 'touchend': this.ontouchend( e ); break;
case 'mousedown': this.ontouchstart( e ); break;
case 'mousemove': this.ontouchmove( e ); break;
case 'mouseup': this.ontouchend( e ); break;
case 'resize': this.setup(); break;
}
}

// ...
}
FD
На сайте с 12.05.2017
Offline
71
#1

А кносоль разработчика в браузере что говорит?

НАКРУТКА INSTAGRAM (https://instagram777.ru) - Смешные цены!
S
На сайте с 30.09.2016
Offline
469
#2
Leonid H:
Почему не срабатывает событие window resize?

Потому что this - это сам класс, а не функция.

Отпилю лишнее, прикручу нужное, выправлю кривое. Вытравлю вредителей.

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий