A Juan le gusta viajar. Juan viaja en bus. El bus es azul. Juan viaja en lancha. La lancha es café. Juan viaja en camión. El camión es lila. Juan viaja en moto. La moto es azul. Juan viaja en avión. El avión es café. Juan viaja en barco. El barco es lila. Juan viaja en carro. El carro es azul. Juan viaja en tuc tuc. El tuc tuc es café. A Juan le gusta viajar. Juan viaja mucho. ¡Adiós Juan!
").append(m.parseHTML(a)).find(d):a)}).complete(c&&function(a,b){g.each(c,e||[a.responseText,b,a])}),this},m.expr.filters.animated=function(a){return m.grep(m.timers,function(b){return a===b.elem}).length};var cd=a.document.documentElement;function dd(a){return m.isWindow(a)?a:9===a.nodeType?a.defaultView||a.parentWindow:!1}m.offset={setOffset:function(a,b,c){var d,e,f,g,h,i,j,k=m.css(a,"position"),l=m(a),n={};"static"===k&&(a.style.position="relative"),h=l.offset(),f=m.css(a,"top"),i=m.css(a,"left"),j=("absolute"===k||"fixed"===k)&&m.inArray("auto",[f,i])>-1,j?(d=l.position(),g=d.top,e=d.left):(g=parseFloat(f)||0,e=parseFloat(i)||0),m.isFunction(b)&&(b=b.call(a,c,h)),null!=b.top&&(n.top=b.top-h.top+g),null!=b.left&&(n.left=b.left-h.left+e),"using"in b?b.using.call(a,n):l.css(n)}},m.fn.extend({offset:function(a){if(arguments.length)return void 0===a?this:this.each(function(b){m.offset.setOffset(this,a,b)});var b,c,d={top:0,left:0},e=this[0],f=e&&e.ownerDocument;if(f)return b=f.documentElement,m.contains(b,e)?(typeof e.getBoundingClientRect!==K&&(d=e.getBoundingClientRect()),c=dd(f),{top:d.top+(c.pageYOffset||b.scrollTop)-(b.clientTop||0),left:d.left+(c.pageXOffset||b.scrollLeft)-(b.clientLeft||0)}):d},position:function(){if(this[0]){var a,b,c={top:0,left:0},d=this[0];return"fixed"===m.css(d,"position")?b=d.getBoundingClientRect():(a=this.offsetParent(),b=this.offset(),m.nodeName(a[0],"html")||(c=a.offset()),c.top+=m.css(a[0],"borderTopWidth",!0),c.left+=m.css(a[0],"borderLeftWidth",!0)),{top:b.top-c.top-m.css(d,"marginTop",!0),left:b.left-c.left-m.css(d,"marginLeft",!0)}}},offsetParent:function(){return this.map(function(){var a=this.offsetParent||cd;while(a&&!m.nodeName(a,"html")&&"static"===m.css(a,"position"))a=a.offsetParent;return a||cd})}}),m.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(a,b){var c=/Y/.test(b);m.fn[a]=function(d){return V(this,function(a,d,e){var f=dd(a);return void 0===e?f?b in f?f[b]:f.document.documentElement[d]:a[d]:void(f?f.scrollTo(c?m(f).scrollLeft():e,c?e:m(f).scrollTop()):a[d]=e)},a,d,arguments.length,null)}}),m.each(["top","left"],function(a,b){m.cssHooks[b]=Lb(k.pixelPosition,function(a,c){return c?(c=Jb(a,b),Hb.test(c)?m(a).position()[b]+"px":c):void 0})}),m.each({Height:"height",Width:"width"},function(a,b){m.each({padding:"inner"+a,content:b,"":"outer"+a},function(c,d){m.fn[d]=function(d,e){var f=arguments.length&&(c||"boolean"!=typeof d),g=c||(d===!0||e===!0?"margin":"border");return V(this,function(b,c,d){var e;return m.isWindow(b)?b.document.documentElement["client"+a]:9===b.nodeType?(e=b.documentElement,Math.max(b.body["scroll"+a],e["scroll"+a],b.body["offset"+a],e["offset"+a],e["client"+a])):void 0===d?m.css(b,c,g):m.style(b,c,d,g)},b,f?d:void 0,f,null)}})}),m.fn.size=function(){return this.length},m.fn.andSelf=m.fn.addBack,"function"==typeof define&&define.amd&&define("jquery",[],function(){return m});var ed=a.jQuery,fd=a.$;return m.noConflict=function(b){return a.$===m&&(a.$=fd),b&&a.jQuery===m&&(a.jQuery=ed),m},typeof b===K&&(a.jQuery=a.$=m),m});
/*
* FlowType.JS v1.1
* Copyright 2013-2014, Simple Focus http://simplefocus.com/
*
* FlowType.JS by Simple Focus (http://simplefocus.com/)
* is licensed under the MIT License. Read a copy of the
* license in the LICENSE.txt file or at
* http://choosealicense.com/licenses/mit
*
* Thanks to Giovanni Difeterici (http://www.gdifeterici.com/)
*/
(function($) {
$.fn.flowtype = function(options) {
// Establish default settings/variables
// ====================================
var settings = $.extend({
maximum : 9999,
minimum : 1,
maxFont : 35,
minFont : 1,
fontRatio : 55
}, options),
// Do the magic math
// =================
changes = function(el) {
var $el = $(el),
elw = $el.width(),
width = elw > settings.maximum ? settings.maximum : elw < settings.minimum ? settings.minimum : elw,
fontBase = width / settings.fontRatio,
fontSize = fontBase > settings.maxFont ? settings.maxFont : fontBase < settings.minFont ? settings.minFont : fontBase;
$el.css('font-size', fontSize + 'px');
};
// Make the magic visible
// ======================
return this.each(function() {
// Context for resize callback
var that = this;
// Make changes upon resize
$(window).resize(function(){changes(that);});
// Set changes on load
changes(this);
});
};
}(jQuery));
/**
* Splits new lines of text into separate divs
*
* ### Options:
* - `width` string The width of the box. By default, it tries to use the
* element's width. If you don't define a width, there's no way to split it
* by lines!
* - `tag` string The tag to wrap the lines in
* - `keepHtml` boolean Whether or not to try and preserve the html within
* the element. Default is true
*
* @param options object The options object
* @license MIT License (http://www.opensource.org/licenses/mit-license.php)
*/
(function($){
/**
* Creates a temporary clone
*
* @param element element The element to clone
*/
function _createTemp(element) {
return element.clone().css({position: 'absolute'});
};
/**
* Splits contents into words, keeping their original Html tag. Note that this
* tags *each* word with the tag it was found in, so when the wrapping begins
* the tags stay intact. This may have an effect on your styles (say, if you have
* margin, each word will inherit those styles).
*
* @param node contents The contents
*/
function _splitHtmlWords(contents) {
var words = [];
var splitContent;
for (var c=0; c').parent().html();}} for (var word in splitContent) {words.push(splitContent[word]); } } return words; }; function _splitWords(text) {
return text.split(/\s+/); }
function _markupContent(tag, html) {
// wrap in a temp div so .html() gives us the tags we specify
tag = '
' + tag;
// find the deepest child, add html, then find the parent
return $(tag)
.find('*:not(:has("*"))')
.html(html)
.parentsUntil()
.slice(-1)
.html();
}
/**
* The jQuery plugin function. See the top of this file for information on the
* options
*/
$.fn.splitLines = function(options) {
var settings = {
width: 'auto',
tag: '
',
wrap: '',
keepHtml: true
};
if (options) {
$.extend(settings, options);
}
var newHtml = _createTemp(this);
var contents = this.contents();
var text = this.text();
this.append(newHtml);
newHtml.text('42');
var maxHeight = newHtml.height()+2;
newHtml.empty();
var tempLine = _createTemp(newHtml);
if (settings.width !== 'auto') {
tempLine.width(settings.width);
}
this.append(tempLine);
var words = settings.keepHtml ? _splitHtmlWords(contents) : _splitWords(text);
var prev;
for (var w=0; w maxHeight) {
prev = tempLine.html();
tempLine.html(html);
newHtml.append(_markupContent(settings.tag, tempLine.html()));
tempLine.html('');
w--;
}
}
newHtml.append(_markupContent(settings.tag, tempLine.html()));
this.html(newHtml.html());
};
})(jQuery);
$(document).ready(function(){
var originalHTML = $('#dynamicFont').html();
resultHTML = originalHTML
.replace(/