From 438912c0c4a4075a5cd74cf9689451c9df4bbe34 Mon Sep 17 00:00:00 2001 From: Alib Date: Mon, 15 Mar 2010 17:56:22 +0100 Subject: New Jquery branch. Initial development version for istreamdev 1.0 --- .../.svn/text-base/jqt.floaty.js.svn-base | 92 ++++++++++++++++++++++ 1 file changed, 92 insertions(+) create mode 100644 themes/extensions/.svn/text-base/jqt.floaty.js.svn-base (limited to 'themes/extensions/.svn/text-base/jqt.floaty.js.svn-base') diff --git a/themes/extensions/.svn/text-base/jqt.floaty.js.svn-base b/themes/extensions/.svn/text-base/jqt.floaty.js.svn-base new file mode 100644 index 0000000..63fb5e6 --- /dev/null +++ b/themes/extensions/.svn/text-base/jqt.floaty.js.svn-base @@ -0,0 +1,92 @@ +/* + + _/ _/_/ _/_/_/_/_/ _/ + _/ _/ _/ _/_/ _/ _/ _/_/_/ _/_/_/ + _/ _/ _/_/ _/ _/ _/ _/ _/ _/ _/ _/ + _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ + _/ _/_/ _/ _/ _/_/ _/_/_/ _/_/_/ _/ _/ + _/ + _/ + + Created by David Kaneda + Documentation and issue tracking on Google Code + + Special thanks to Jonathan Stark + and pinch/zoom + + (c) 2009 by jQTouch project members. + See LICENSE.txt for license. + +*/ + +(function($) { + if ($.jQTouch) + { + $.jQTouch.addExtension(function Floaty(jQT){ + + $.fn.makeFloaty = function(options){ + var defaults = { + align: 'top', + spacing: 20, + time: '.3s' + } + var settings = $.extend({}, defaults, options); + settings.align = (settings.align == 'top') ? 'top' : 'bottom'; + + return this.each(function(){ + var $el = $(this); + + $el.css({ + '-webkit-transition': 'top ' + settings.time + ' ease-in-out', + 'display': 'block', + 'min-height': '0 !important' + }).data('settings', settings); + + $(document).bind('scroll', function(){ + if ($el.data('floatyVisible') === true) + { + $el.scrollFloaty(); + } + }); + $el.scrollFloaty(); + }); + } + + $.fn.scrollFloaty = function(){ + return this.each(function(){ + var $el = $(this); + var settings = $el.data('settings'); + var wHeight = $('html').attr('clientHeight'); // WRONG + + var newY = window.pageYOffset + + ((settings.align == 'top') ? + settings.spacing : wHeight - settings.spacing - $el.get(0).offsetHeight); + + $el.css('top', newY).data('floatyVisible', true); + }); + } + + $.fn.hideFloaty = function(){ + return this.each(function(){ + var $el = $(this); + var oh = $el.get(0).offsetHeight; + + $el.css('top', -oh-10).data('floatyVisible', false); + }); + } + + $.fn.toggleFloaty = function(){ + return this.each(function(){ + var $el = $(this); + if ($el.data('floatyVisible') === true){ + $el.hideFloaty(); + } + else + { + $el.scrollFloaty(); + } + }); + } + }); + } +})(jQuery); \ No newline at end of file -- cgit v1.2.3