What I’m Reading: Blog Piece
When I’m writing non-fiction, my reading tends be dominated by the subject in hand. I try to read obsessively on whatever project i’m writing about so that I’m completely filled up by it. When I’m in between books, as I am now, I try to read more freely, either catching up on books I’ve been looking forward to, or following possibilities that interest me. I’m currently looking into the possibility of a book on the Arctic, so I read Barry Lopez’s Arctic Dreams. Few people write more eloquently or gracefully about landscape and nature than Lopez. Every time I read him…
My piece for Marshall Zeringue’s excellent Campaign for the American Reader blog. You can read the rest here
Products from Amazon.co.uk
Savage Frontier: The Pyrenees in History
Price: £20.00
‹
›
jQuery(document).ready(function() {
var CONSTANTS = {
productMinWidth : 185,
productMargin : 20
};
var $adUnits = jQuery('.aalb-product-carousel-unit');
$adUnits.each(function() {
var $adUnit = jQuery(this),
$wrapper = $adUnit.find('.aalb-pc-wrapper'),
$productContainer = $adUnit.find('.aalb-pc-product-container'),
$btnNext = $adUnit.find('.aalb-pc-btn-next'),
$btnPrev = $adUnit.find('.aalb-pc-btn-prev'),
$productList = $productContainer.find('.aalb-pc-product-list'),
$products = $productList.find('.aalb-pc-product'),
productCount = $products.length;
if (!productCount) {
return true;
}
var rows = $adUnit.find('input[name=rows]').length && parseInt($adUnit.find('input[name=rows]').val(), 10);
var columns = $adUnit.find('input[name=columns]').length && parseInt($adUnit.find('input[name=columns]').val(), 10);
if( columns ) {
var productContainerMinWidth = columns * (CONSTANTS.productMinWidth + CONSTANTS.productMargin) + 'px';
$adUnit.css( 'min-width', productContainerMinWidth );
$productContainer.css( 'min-width', productContainerMinWidth );
$products.filter( ':nth-child(' + columns + 'n + 1)' ).css( 'clear', 'both' );
}
if (rows && columns) {
var cutOffIndex = (rows * columns) - 1;
$products.filter(':gt(' + cutOffIndex + ')').remove();
}
function updateLayout() {
var wrapperWidth = $wrapper.width();
var possibleColumns = columns || parseInt( wrapperWidth / (CONSTANTS.productMinWidth + CONSTANTS.productMargin), 10 );
var actualColumns = columns || possibleColumns < productCount ? possibleColumns : productCount;
/**
* The actual columns can be zero when the wraperwidth is less than sum of CONSTANTS.productMinWidth and
* CONSTANTS.productMargin.The parseInt will use floor function and converts any value less than 1 to
* zero.Therefore making actual columns 1 .
**/
if( actualColumns == 0 ) {
actualColumns = 1;
}
var productWidth = parseInt( wrapperWidth / actualColumns, 10 ) - CONSTANTS.productMargin;
$products.css( 'width', productWidth + 'px' );
/**
* Removing the Carousel navigation button when the number of products selected by admin is less
* than the actual columns (the number of products) can be shown on screen
**/
if( productCount > actualColumns ) {
$btnNext.css( 'visibility', 'visible' ).removeClass( 'disabled' ).unbind( 'click' );
$btnPrev.css( 'visibility', 'visible' ).removeClass( 'disabled' ).unbind( 'click' );
}
$productContainer.jCarouselLite( {
btnNext : '#' + $adUnit.attr( 'id' ) + ' .aalb-pc-btn-next',
btnPrev : '#' + $adUnit.attr( 'id' ) + ' .aalb-pc-btn-prev',
visible : actualColumns,
circular: false
} );
}
updateLayout();
jQuery(window).resize(updateLayout);
});
});
/*!
* jCarouselLite - v1.1 - 2014-09-28
* http://www.gmarwaha.com/jquery/jcarou...
* Copyright (c) 2014 Ganeshji Marwaha
* Licensed MIT (https://github.com/ganeshmax/jcarouse...)
*/
!function(a){a.jCarouselLite={version:"1.1"},a.fn.jCarouselLite=function(b){return b=a.extend({},a.fn.jCarouselLite.options,b||{}),this.each(function(){function c(a){return n||(clearTimeout(A),z=a,b.beforeStart&&b.beforeStart.call(this,i()),b.circular?j(a):k(a),m({start:function(){n=!0},done:function(){b.afterEnd&&b.afterEnd.call(this,i()),b.auto&&h(),n=!1}}),b.circular||l()),!1}function d(){if(n=!1,o=b.vertical?"top":"left",p=b.vertical?"height":"width",q=B.find(">ul"),r=q.find(">li"),x=r.size(),w=x0?z-b.scroll:z+b.scroll)}),b.auto&&h()}function h(){A=setTimeout(function(){c(z+b.scroll)},b.auto)}function i(){return s.slice(z).slice(0,w)}function j(a){var c;a=y-w+1&&(c=a-x-b.scroll,q.css(o,-(c*t)+"px"),z=c+b.scroll)}function k(a){0>a?z=0:a>y-w&&(z=y-w)}function l(){a(b.btnPrev+","+b.btnNext).removeClass("disabled"),a(z-b.scrolly-w&&b.btnNext||[]).addClass("disabled")}function m(c){n=!0,q.animate("left"==o?{left:-(z*t)}:{top:-(z*t)},a.extend({duration:b.speed,easing:b.easing},c))}var n,o,p,q,r,s,t,u,v,w,x,y,z,A,B=a(this);d(),e(),f(),g()})},a.fn.jCarouselLite.options={btnPrev:null,btnNext:null,btnGo:null,mouseWheel:!1,auto:null,speed:200,easing:null,vertical:!1,circular:!0,visible:3,start:0,scroll:1,beforeStart:null,afterEnd:null}}(jQuery);
The post What I’m Reading: Blog Piece appeared first on Matt Carr's Infernal Machine.