PageSourceSearch

https://www.joyfulheart.com/js/plugins.js

js joyfulheart.com collected 2026-09-26 01:04:27 UTC 7,364 bytes, 243 lines download raw bytes

1// Avoid `console` errors in browsers that lack a console.
2if (!(window.console && console.log)) {
3    (function() {
4        var noop = function() {};
5        var methods = ['assert', 'clear', 'count', 'debug', 'dir', 'dirxml', 'error', 'exception', 'group', 'groupCollapsed', 'groupEnd', 'info', 'log', 'markTimeline', 'profile', 'profileEnd', 'markTimeline', 'table', 'time', 'timeEnd', 'timeStamp', 'trace', 'warn'];
6        var length = methods.length;
7        var console = window.console = {};
8        while (length--) {
9            console[methods[length]] = noop;
10        }
11    }());
12}
13
14// Place any jQuery/helper plugins in here.
15
16/*********************
17//* jQuery Multi Level CSS Menu #2- By Dynamic Drive: http://www.dynamicdrive.com/
18//* Last update: Nov 7th, 08': Limit # of queued animations to minmize animation stuttering
19//* Menu avaiable at DD CSS Library: http://www.dynamicdrive.com/style/
20*********************/
21
22//Update: April 12th, 10: Fixed compat issue with jquery 1.4x
23
24//Specify full URL to down and right arrow images (23 is padding-right to add to top level LIs with drop downs):
25var arrowimages={down:['downarrowclass', '/img/down.gif', 23], right:['rightarrowclass', '/img/right.gif']}
26
27var jqueryslidemenu={
28
29animateduration: {over: 200, out: 100}, //duration of slide in/ out animation, in milliseconds
30
31buildmenu:function(menuid, arrowsvar){
32	jQuery(document).ready(function($){
33		var $mainmenu=$("#"+menuid+">ul")
34		var $headers=$mainmenu.find("ul").parent()
35		$headers.each(function(i){
36			var $curobj=$(this)
37			var $subul=$(this).find('ul:eq(0)')
38			this._dimensions={w:this.offsetWidth, h:this.offsetHeight, subulw:$subul.outerWidth(), subulh:$subul.outerHeight()}
39			this.istopheader=$curobj.parents("ul").length==1? true : false
40			$subul.css({top:this.istopheader? this._dimensions.h+"px" : 0})
41			$curobj.children("a:eq(0)").css(this.istopheader? {paddingRight: arrowsvar.down[2]} : {}).append(
42				'<img src="'+ (this.istopheader? arrowsvar.down[1] : arrowsvar.right[1])
43				+'" class="' + (this.istopheader? arrowsvar.down[0] : arrowsvar.right[0])
44				+ '" style="border:0;" />'
45			)
46			$curobj.hover(
47				function(e){
48					var $targetul=$(this).children("ul:eq(0)")
49					this._offsets={left:$(this).offset().left, top:$(this).offset().top}
50					var menuleft=this.istopheader? 0 : this._dimensions.w
51					menuleft=(this._offsets.left+menuleft+this._dimensions.subulw>$(window).width())? (this.istopheader? -this._dimensions.subulw+this._dimensions.w : -this._dimensions.w) : menuleft
52					if ($targetul.queue().length<=1) //if 1 or less queued animations
53						$targetul.css({left:menuleft+"px", width:this._dimensions.subulw+'px'}).slideDown(jqueryslidemenu.animateduration.over)
54				},
55				function(e){
56					var $targetul=$(this).children("ul:eq(0)")
57					$targetul.slideUp(jqueryslidemenu.animateduration.out)
58				}
59			) //end hover
60			$curobj.click(function(){
61				$(this).children("ul:eq(0)").hide()
62			})
63		}) //end $headers.each()
64		$mainmenu.find("ul").css({display:'none', visibility:'visible'})
65	}) //end document.ready
66}
67}
68
69//build menu with ID="myslidemenu" on page:
70jqueryslidemenu.buildmenu("myslidemenu", arrowimages)
71
72// ----- Autolayer JQuery plugin -------------- //
73$(document).ready(function() {
74
75	//select all the a tag with name equal to modal
76	$('a[name=modal]').click(function(e) {
77		//Cancel the link behavior
78		e.preventDefault();
79
80		//Get the A tag
81		var id = $(this).attr('href');
82
83		//Get the screen height and width
84		var maskHeight = $(document).height();
85		var maskWidth = $(window).width();
86
87		//Set heigth and width to mask to fill up the whole screen
88		$('#mask').css({'width':maskWidth,'height':maskHeight});
89
90		//transition effect
91		$('#mask').fadeIn(1000);
92		$('#mask').fadeTo("slow",0.8);
93
94		//Get the window height and width
95		var winH = $(window).height();
96		var winW = $(window).width();
97
98		//Set the popup window to center
99		$(id).css('top',  winH/2-$(id).height()/2);
100		$(id).css('left', winW/2-$(id).width()/2);
101
102		//transition effect
103		$(id).fadeIn(2000);
104
105	});
106	//launchWindow('#dialog');//qual vc vai abrir
107	//if close button is clicked
108	$('.window .close').click(function (e) {
109		//Cancel the link behavior
110		e.preventDefault();
111
112		$('#mask').hide();
113		$('.window').hide();
114	});
115
116	//if mask is clicked
117	$('#mask').click(function () {
118		$(this).hide();
119		$('.window').hide();
120	});
121
122});
123
124function launchWindow(id) {//essa função replica o acontecimento :P
125
126		//Get the screen height and width
127		var maskHeight = $(document).height();
128		var maskWidth = $(window).width();
129
130		//Set heigth and width to mask to fill up the whole screen
131		$('#mask').css({'width':maskWidth,'height':maskHeight});
132
133		//transition effect
134		$('#mask').fadeIn(500);
135		$('#mask').fadeTo("fast",0.5);
136
137		//Get the window height and width
138		var winH = $(window).height();
139		var winW = $(window).width();
140
141		//Set the popup window to center
142		$(id).css('top',  winH/2-$(id).height()/2);
143		$(id).css('left', winW/2-$(id).width()/2);
144
145		//transition effect
146		$(id).fadeIn(800);
147
148}
149
150/*!
151* jQuery Cookie Plugin v1.3.1
152* https://github.com/carhartl/jquery-cookie
153*
154* Copyright 2013 Klaus Hartl
155* Released under the MIT license
156*/
157(function (factory) {
158if (typeof define === 'function' && define.amd) {
159// AMD. Register as anonymous module.
160define(['jquery'], factory);
161} else {
162// Browser globals.
163factory(jQuery);
164}
165}(function ($) {
166
167var pluses = /\+/g;
168
169function raw(s) {
170return s;
171}
172
173function decoded(s) {
174return decodeURIComponent(s.replace(pluses, ' '));
175}
176
177function converted(s) {
178if (s.indexOf('"') === 0) {
179// This is a quoted cookie as according to RFC2068, unescape
180s = s.slice(1, -1).replace(/\\"/g, '"').replace(/\\\\/g, '\\');
181}
182try {
183return config.json ? JSON.parse(s) : s;
184} catch(er) {}
185}
186
187var config = $.cookie = function (key, value, options) {
188
189// write
190if (value !== undefined) {
191options = $.extend({}, config.defaults, options);
192
193if (typeof options.expires === 'number') {
194var days = options.expires, t = options.expires = new Date();
195t.setDate(t.getDate() + days);
196}
197
198value = config.json ? JSON.stringify(value) : String(value);
199
200return (document.cookie = [
201config.raw ? key : encodeURIComponent(key),
202'=',
203config.raw ? value : encodeURIComponent(value),
204options.expires ? '; expires=' + options.expires.toUTCString() : '', // use expires attribute, max-age is not supported by IE
205options.path ? '; path=' + options.path : '',
206options.domain ? '; domain=' + options.domain : '',
207options.secure ? '; secure' : ''
208].join(''));
209}
210
211// read
212var decode = config.raw ? raw : decoded;
213var cookies = document.cookie.split('; ');
214var result = key ? undefined : {};
215for (var i = 0, l = cookies.length; i < l; i++) {
216var parts = cookies[i].split('=');
217var name = decode(parts.shift());
218var cookie = decode(parts.join('='));
219
220if (key && key === name) {
221result = converted(cookie);
222break;
223}
224
225if (!key) {
226result[name] = converted(cookie);
227}
228}
229
230return result;
231};
232
233config.defaults = {};
234
235$.removeCookie = function (key, options) {
236if ($.cookie(key) !== undefined) {
237$.cookie(key, '', $.extend(options, { expires: -1 }));
238return true;
239}
240return false;
241};
242
243}));

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.