diff options
| author | Franck Cuny <franck@lumberjaph.net> | 2013-07-25 18:19:52 -0700 |
|---|---|---|
| committer | Franck Cuny <franck@lumberjaph.net> | 2013-07-25 18:19:52 -0700 |
| commit | b42718f7d9aac88a3048c616193f81deff49e401 (patch) | |
| tree | f964fbae3d81cb6af155d612985f4b344267f4b5 /assets/js/vendor/jquery.fitvids.js | |
| parent | attempt for a new design (diff) | |
| download | lumberjaph-b42718f7d9aac88a3048c616193f81deff49e401.tar.gz | |
First attempt with the new theme.
Diffstat (limited to '')
| -rw-r--r-- | assets/js/vendor/jquery.fitvids.js | 81 |
1 files changed, 81 insertions, 0 deletions
diff --git a/assets/js/vendor/jquery.fitvids.js b/assets/js/vendor/jquery.fitvids.js new file mode 100644 index 0000000..4cb8e9c --- /dev/null +++ b/assets/js/vendor/jquery.fitvids.js @@ -0,0 +1,81 @@ +/*global jQuery */ +/*jshint multistr:true browser:true */ +/*! +* FitVids 1.0 +* +* Copyright 2011, Chris Coyier - http://css-tricks.com + Dave Rupert - http://daverupert.com +* Credit to Thierry Koblentz - http://www.alistapart.com/articles/creating-intrinsic-ratios-for-video/ +* Released under the WTFPL license - http://sam.zoy.org/wtfpl/ +* +* Date: Thu Sept 01 18:00:00 2011 -0500 +*/ + +(function( $ ){ + + "use strict"; + + $.fn.fitVids = function( options ) { + var settings = { + customSelector: null + }; + + var div = document.createElement('div'), + ref = document.getElementsByTagName('base')[0] || document.getElementsByTagName('script')[0]; + + div.className = 'fit-vids-style'; + div.innerHTML = '­<style> \ + .fluid-width-video-wrapper { \ + width: 100%; \ + position: relative; \ + padding: 0; \ + } \ + \ + .fluid-width-video-wrapper iframe, \ + .fluid-width-video-wrapper object, \ + .fluid-width-video-wrapper embed { \ + position: absolute; \ + top: 0; \ + left: 0; \ + width: 100%; \ + height: 100%; \ + } \ + </style>'; + + ref.parentNode.insertBefore(div,ref); + + if ( options ) { + $.extend( settings, options ); + } + + return this.each(function(){ + var selectors = [ + "iframe[src*='player.vimeo.com']", + "iframe[src*='www.youtube.com']", + "iframe[src*='www.youtube-nocookie.com']", + "iframe[src*='www.kickstarter.com']", + "object", + "embed" + ]; + + if (settings.customSelector) { + selectors.push(settings.customSelector); + } + + var $allVideos = $(this).find(selectors.join(',')); + + $allVideos.each(function(){ + var $this = $(this); + if (this.tagName.toLowerCase() === 'embed' && $this.parent('object').length || $this.parent('.fluid-width-video-wrapper').length) { return; } + var height = ( this.tagName.toLowerCase() === 'object' || ($this.attr('height') && !isNaN(parseInt($this.attr('height'), 10))) ) ? parseInt($this.attr('height'), 10) : $this.height(), + width = !isNaN(parseInt($this.attr('width'), 10)) ? parseInt($this.attr('width'), 10) : $this.width(), + aspectRatio = height / width; + if(!$this.attr('id')){ + var videoID = 'fitvid' + Math.floor(Math.random()*999999); + $this.attr('id', videoID); + } + $this.wrap('<div class="fluid-width-video-wrapper"></div>').parent('.fluid-width-video-wrapper').css('padding-top', (aspectRatio * 100)+"%"); + $this.removeAttr('height').removeAttr('width'); + }); + }); + }; +})( jQuery );
\ No newline at end of file |
