gulp.task( 'pug', function () {
return gulp.src( 'pug/*.pug', { since: gulp.lastRun( 'pug' ) } )
.pipe( pug() )
.pipe( gulp.dest( './dist/' ) );
});
$(function() {
var width = $(window).width(),
size = width < 768 ? 'xs' : width < 992 ? 'sm' : width < 1200 ? 'md' : width > 1600 ? 'xlg' : 'lg',
options = {
html: !0,
trigger: 'hover',
container: 'body',
viewport: {
selector: 'body',
padding: 2
},
template: '<div class="popover"><div class="arrow"></div><h3 class="popover-title"></h3><div class="popover-content"></div></div>'
};
$( '[data-toggle="popover"]' ).each( function() {
var toggle = $(this);
$.each([ 'bottom', 'top', 'left', 'right' ], function( i, value ) {
var cls = size + '-' + value;
if ( toggle.hasClass( cls ) ) options.placement = value;
if ( cls === 'xs-top' && toggle.hasClass( 'error' ) ) {
options.delay = { show: 500, hide: 10 };
delete options.viewport;
}
toggle.popover( options );
});
});
});
// Общие св-ва и методы для всех машин сюда
var car = {
rides: function() {
alert( this.name + ' ' + this.engine + ' едет!')
},
ridesSpeed: function() {
alert( this.speed + ' км в час скорость ' + this.name + ' ' + this.engine )
}
};
// Только для спортивных сюда
function SportCar( name, speed, engine ) {
this.__proto__ = car;
this.name = name;
this.speed = speed;
this.engine = engine;
}
var bmw = new SportCar( 'BMW', 200, 'v6' );
Если дам им модификаторы, то придется в зависимости от модификатора делать изменения элементов блока, но тогда придется использовать много каскадности, что плохо по БЭМу.