79 lines
2.7 KiB
JavaScript
79 lines
2.7 KiB
JavaScript
|
jQuery(document).ready(function(){
|
||
|
|
||
|
var port_carousel_wrapper = jQuery('.blog-carousel-wrapper');
|
||
|
|
||
|
function carousel_port_init(){
|
||
|
port_carousel_wrapper.each(function(){
|
||
|
var port_carousel = jQuery(this);
|
||
|
var port_holder = port_carousel.children('.blog-carousel-holder');
|
||
|
var port_item = port_carousel.find('.gdl-blog-widget');
|
||
|
|
||
|
port_item.css('float', 'left');
|
||
|
|
||
|
var parent_col = 12;
|
||
|
if( jQuery(this).parent().parent().hasClass('six') ){
|
||
|
parent_col = 6;
|
||
|
}else if( jQuery(this).parent().parent().hasClass('four') ){
|
||
|
parent_col = 4;
|
||
|
}else if( jQuery(this).parent().parent().hasClass('three') ){
|
||
|
parent_col = 3;
|
||
|
}
|
||
|
|
||
|
var child_col;
|
||
|
var child_size;
|
||
|
if( port_item.filter(':first').hasClass('three') ){
|
||
|
child_col = 3;
|
||
|
child_size = port_carousel.parents('.row').width() / 4;
|
||
|
}else if( port_item.filter(':first').hasClass('four') ){
|
||
|
child_col = 4;
|
||
|
child_size = port_carousel.parents('.row').width() / 3;
|
||
|
}else if( port_item.filter(':first').hasClass('six') ){
|
||
|
child_col = 6;
|
||
|
child_size = port_carousel.parents('.row').width() / 2;
|
||
|
}
|
||
|
port_holder.attr('data-num', parseInt(parent_col/child_col) );
|
||
|
|
||
|
if( jQuery('html').filter(':first').width() <= '767' ){
|
||
|
port_holder.attr('data-num', 1);
|
||
|
child_size = port_carousel.parents('.row').width();
|
||
|
}
|
||
|
|
||
|
port_item.css('width', child_size );
|
||
|
|
||
|
port_holder.attr('data-width', child_size);
|
||
|
port_holder.attr('data-max', port_item.length);
|
||
|
port_holder.width( port_item.length * child_size );
|
||
|
|
||
|
var cur_index = parseInt(port_holder.attr('data-index'));
|
||
|
port_holder.css({ 'margin-left': -(cur_index * child_size + 10) });
|
||
|
});
|
||
|
}
|
||
|
|
||
|
// bind the navigation
|
||
|
var port_nav = port_carousel_wrapper.children('.blog-nav-wrapper');
|
||
|
port_nav.children('.blog-nav.left').click(function(){
|
||
|
var port_holder = jQuery(this).parent('.blog-nav-wrapper').siblings('.blog-carousel-holder');
|
||
|
var cur_index = parseInt(port_holder.attr('data-index'));
|
||
|
|
||
|
if( cur_index > 0 ){ cur_index--; }
|
||
|
port_holder.attr('data-index', cur_index);
|
||
|
port_holder.animate({ 'margin-left': -(cur_index * parseInt(port_holder.attr('data-width')) + 10) });
|
||
|
});
|
||
|
port_nav.children('.blog-nav.right').click(function(){
|
||
|
var port_holder = jQuery(this).parent('.blog-nav-wrapper').siblings('.blog-carousel-holder');
|
||
|
var cur_index = parseInt(port_holder.attr('data-index'));
|
||
|
if( cur_index + parseInt(port_holder.attr('data-num')) < parseInt(port_holder.attr('data-max')) ){
|
||
|
cur_index++;
|
||
|
}
|
||
|
|
||
|
port_holder.attr('data-index', cur_index);
|
||
|
port_holder.animate({ 'margin-left': -(cur_index * parseInt(port_holder.attr('data-width')) + 10) });
|
||
|
});
|
||
|
carousel_port_init();
|
||
|
|
||
|
|
||
|
jQuery(window).resize(function(){
|
||
|
carousel_port_init();
|
||
|
});
|
||
|
|
||
|
});
|