compass-jquery-plugin 0.3.2.pre.2 → 0.3.2.0
Sign up to get free protection for your applications and to get access to all the features.
- data/LICENSE.md +20 -20
- data/README.md +7 -2
- data/VERSION.yml +2 -2
- data/lib/jquery/gridify/grid.rb +1 -1
- data/lib/jquery/gridify/grid_column.rb +1 -1
- data/lib/jquery/gridify/grid_finder.rb +16 -1
- data/lib/jquery/gridify/grid_view.rb +1 -1
- data/lib/jquery/jqgrid.rb +4 -4
- data/lib/jquery/jqtouch.rb +3 -3
- data/lib/jquery/jquery.rb +431 -431
- data/lib/jquery/jquery_json_response.rb +28 -0
- data/lib/jquery/secret_sauce.rb +8 -8
- data/lib/jquery/secret_sauce/controller/ui_dialog_controls.rb +13 -13
- data/lib/jquery/secret_sauce/controller/ui_grid_controls.rb +18 -18
- data/lib/jquery/secret_sauce/helpers/ui_dialog_helper.rb +5 -5
- data/lib/jquery/secret_sauce/model/find_for_grid.rb +41 -41
- data/templates/dynatree/jquery.dynatree.js +111 -110
- data/templates/dynatree/jquery.dynatree.min.js +75 -77
- data/templates/dynatree/jquery/dynatree/aero.scss +1 -3
- data/templates/dynatree/jquery/dynatree/aqua.scss +1 -3
- data/templates/dynatree/jquery/dynatree/crystal.scss +1 -3
- data/templates/dynatree/jquery/dynatree/xp.scss +1 -3
- data/templates/emulators/emulators/iphone.landscape.png +0 -0
- data/templates/emulators/emulators/iphone.landscape.scss +4 -4
- data/templates/emulators/emulators/palm.landscape.scss +6 -6
- data/templates/emulators/emulators/palm.pre.landscape.png +0 -0
- data/templates/ical/jquery.ical.js +3202 -3197
- data/templates/ical/jquery.ical.min.js +185 -184
- data/templates/ical/jquery/ical.scss +3 -3
- data/templates/jqgrid/i18n/jqgrid/locale-ar.js +126 -0
- data/templates/jqgrid/i18n/jqgrid/locale-ar.min.js +6 -0
- data/templates/jqgrid/i18n/jqgrid/locale-fi.js +45 -47
- data/templates/jqgrid/i18n/jqgrid/locale-fi.min.js +6 -6
- data/templates/jqgrid/jquery.jqGrid.js +2047 -2036
- data/templates/jqgrid/jquery.jqGrid.min.js +48 -48
- data/templates/jqgrid/manifest.rb +2 -0
- data/templates/jqtouch/jquery.jqtouch.js +122 -113
- data/templates/jqtouch/jquery.jqtouch.min.js +1 -1
- data/templates/jquery/config/initializers/jquery.rb +4 -2
- data/templates/jquery/i18n/jquery.ui/datepicker-ar-DZ.js +23 -0
- data/templates/jquery/i18n/jquery.ui/datepicker-ar-DZ.min.js +2 -0
- data/templates/jquery/i18n/jquery.ui/datepicker-en-AU.js +23 -0
- data/templates/jquery/i18n/jquery.ui/datepicker-en-AU.min.js +2 -0
- data/templates/jquery/i18n/jquery.ui/datepicker-en-NZ.js +23 -0
- data/templates/jquery/i18n/jquery.ui/datepicker-en-NZ.min.js +2 -0
- data/templates/jquery/i18n/jquery.ui/datepicker-ml.js +23 -0
- data/templates/jquery/i18n/jquery.ui/datepicker-ml.min.js +2 -0
- data/templates/jquery/jquery-ui.js +354 -316
- data/templates/jquery/jquery-ui.min.js +544 -544
- data/templates/jquery/jquery.cookie.js +3 -3
- data/templates/jquery/jquery.form.js +271 -140
- data/templates/jquery/jquery.form.min.js +19 -17
- data/templates/jquery/jquery.layout.js +2435 -2437
- data/templates/jquery/jquery.layout.min.js +4 -3
- data/templates/jquery/jquery.mousewheel.js +78 -0
- data/templates/jquery/jquery.mousewheel.min.js +2 -0
- data/templates/jquery/jquery.offline.js +212 -0
- data/templates/jquery/jquery.offline.min.js +4 -0
- data/templates/jquery/jquery.tmpl.js +15 -22
- data/templates/jquery/jquery.tmpl.min.js +12 -12
- data/templates/jquery/jquery.tmplPlus.js +1 -0
- data/templates/jquery/jquery/ui/_theme.scss +27 -27
- data/templates/jquery/json.js +7 -0
- data/templates/jquery/json.min.js +7 -0
- data/templates/jquery/manifest.rb +14 -2
- data/templates/mobile/glyphish/{Read me first - license.txt → License.txt} +0 -0
- data/templates/mobile/jquery.mobile.js +1583 -1408
- data/templates/mobile/jquery.mobile.min.js +5 -5
- data/templates/mobile/jquery/mobile/_base.scss +938 -1038
- data/templates/mobile/jquery/mobile/default.scss +25 -26
- data/templates/mobile/jquery/mobile/valencia.scss +0 -1
- data/templates/mobile/manifest.rb +1 -1
- data/templates/tools/config/initializers/tools.rb +2 -0
- data/templates/tools/flowplayer.js +24 -0
- data/templates/tools/flowplayer.min.js +30 -0
- data/templates/tools/jquery.tools.js +4 -3
- data/templates/tools/jquery.tools.min.js +1 -1
- data/templates/tools/manifest.rb +4 -0
- data/templates/tools/swfobject.js +777 -0
- data/templates/tools/swfobject.min.js +19 -0
- metadata +31 -15
- data/templates/jquery/jquery.metadata.js +0 -122
- data/templates/jquery/jquery.metadata.min.js +0 -2
@@ -12,7 +12,7 @@ if(b.doCallback&&b.callback){b.doCallback=false;var c=b.callback.split(","),d=c[
|
|
12
12
|
D=function(b,c){var d=0,e=false,f="";if(!i.browser.msie)if(i.curCSS(b[0],"display",true)=="none"){e=true;f=i.curCSS(b[0],"visibility",true);b.css({display:"block",visibility:"hidden"})}d=parseInt(i.curCSS(b[0],c,true),10)||0;if(e){b.css({display:"none"});f&&f!="hidden"&&b.css({visibility:f})}return d},E=function(b,c){var d;if(M(b)){b=G(b);d=s[b]}else d=i(b);if(c<=0)return 0;else c>0||(c=M(b)?H(b):d.outerWidth());return i.boxModel?c-D(d,"paddingLeft")-D(d,"paddingRight")-(i.curCSS(d[0],"borderLeftStyle",
|
13
13
|
true)=="none"?0:D(d,"borderLeftWidth"))-(i.curCSS(d[0],"borderRightStyle",true)=="none"?0:D(d,"borderRightWidth")):c},A=function(b,c){var d;if(M(b)){b=G(b);d=s[b]}else d=i(b);if(c<=0)return 0;else c>0||(c=M(b)?H(b):d.outerHeight());return i.boxModel?c-D(d,"paddingTop")-D(d,"paddingBottom")-(i.curCSS(d[0],"borderTopStyle",true)=="none"?0:D(d,"borderTopWidth"))-(i.curCSS(d[0],"borderBottomStyle",true)=="none"?0:D(d,"borderBottomWidth")):c},H=function(b,c){var d=s[b],e=p[b],f=t[b],g=c?e.spacing_open:
|
14
14
|
0;e=c?e.spacing_closed:0;return!d||f.isHidden?0:f.isClosed||f.isSliding&&c?e:l[b].dir=="horz"?d.outerHeight()+g:d.outerWidth()+g},U=function(b){var c=q,d=l[b].dir,e=t[b],f=s[ga[b]],g=p[b].spacing_open,k=p[ga[b]].spacing_open,h=!f?0:d=="horz"?f.outerHeight():f.outerWidth();f=e.minSize||0;d=Math.min(e.maxSize||9999,(d=="horz"?c.innerHeight:c.innerWidth)-g-h-k);var m,j;switch(b){case "north":m=c.offsetTop+f;j=c.offsetTop+d;break;case "west":m=c.offsetLeft+f;j=c.offsetLeft+d;break;case "south":m=c.offsetTop+
|
15
|
-
c.innerHeight-d;j=c.offsetTop+c.innerHeight-f;break;case "east":m=c.offsetLeft+c.innerWidth-d;j=c.offsetLeft+c.innerWidth-f}i.extend(e,{minSize:f,maxSize:d,minPosition:m,maxPosition:j})},ja=function(){var b={top:H("north",true),bottom:H("south",true),left:H("west",true),right:H("east",true),width:0,height:0};
|
15
|
+
c.innerHeight-d;j=c.offsetTop+c.innerHeight-f;break;case "east":m=c.offsetLeft+c.innerWidth-d;j=c.offsetLeft+c.innerWidth-f}i.extend(e,{minSize:f,maxSize:d,minPosition:m,maxPosition:j})},ja=function(){var b={top:H("north",true),bottom:H("south",true),left:H("west",true),right:H("east",true),width:0,height:0};b.width=q.innerWidth-left-right;b.height=q.innerHeight-bottom-top;b.top+=q.top;b.bottom+=q.bottom;b.left+=q.left;b.right+=q.right;return b},ka=function(b){var c={},d,e,f;i.each("Left,Right,Top,Bottom".split(","),
|
16
16
|
function(){d=G(this);e=c["border"+d]=D(b,"border"+d+"Width");f=c["padding"+d]=D(b,"padding"+d);c["offset"+d]=e+f;if(b==z)c[d.toLowerCase()]=i.boxModel?f:0});c.innerWidth=c.outerWidth=b.outerWidth();c.innerHeight=c.outerHeight=b.outerHeight();if(i.boxModel){c.innerWidth-=c.offsetLeft+c.offsetRight;c.innerHeight-=c.offsetTop+c.offsetBottom}return c},pa=function(b,c,d,e){var f=window.layout=window.layout||{};f=f.timers=f.timers||{};b="layout_"+t.id+"_"+b+"_"+c;f[b]||(f[b]=setTimeout(d,e))},V=function(b,
|
17
17
|
c){var d=window.layout=window.layout||{};d=d.timers=d.timers||{};var e="layout_"+t.id+"_"+b+"_"+c;if(d[e]){clearTimeout(d[e]);delete d[e];return true}else return false},qa=function(){try{if(z[0].tagName=="BODY"){i("html").css({height:"100%",overflow:"hidden"});i("body").css({position:"relative",height:"100%",overflow:"hidden",margin:0,padding:0,border:"none"})}else{var b={overflow:"hidden"},c=z.css("position"),d=z.css("height");if(!z.hasClass("ui-layout-pane")){if(!c||"fixed,absolute,relative".indexOf(c)<
|
18
18
|
0)b.position="relative";if(!d||d=="auto")b.height="100%"}z.css(b)}}catch(e){}q=t.container=ka(z)},ra=function(){i.each(l.borderPanes.split(","),function(b,c){var d=p[c];if(d.enableCursorHotkey||d.customHotkey){i(document).keydown(na);return false}})},sa=function(){u=oa(u);if(u.effects){i.extend(Z,u.effects);delete u.effects}i.each("name,scrollToBookmarkOnLoad".split(","),function(d,e){if(u[e]!==undefined)p[e]=u[e];else if(u.defaults[e]!==undefined){p[e]=u.defaults[e];delete u.defaults[e]}});i.each("paneSelector,resizerCursor,customHotkey".split(","),
|
@@ -45,5 +45,6 @@ false;n=f.isClosed?w:r;if(r)r.css("display",f.isClosed?"none":"block");if(w)w.cs
|
|
45
45
|
e=q.innerWidth<b,f,g;if(d||e)i.each(["south","north","east","west"],function(k,h){f=t[h];g=l[h].dir;if(!f.isClosed&&(d&&g=="horz"||e&&g=="vert")){U(h);f.size>f.maxSize&&ba(h,f.maxSize)}});L("all");P("all")},z=i(this).css({overflow:"hidden"}),s={},N={},B={},O={},l={allPanes:"north,south,east,west,center",borderPanes:"north,south,east,west",zIndex:{resizer_normal:1,pane_normal:2,mask:4,sliding:100,resizing:1E4,animation:1E4},resizers:{cssReq:{position:"absolute",padding:0,margin:0,fontSize:"1px",textAlign:"left",
|
46
46
|
overflow:"hidden",zIndex:1},cssDef:{background:"#DDD",border:"none"}},togglers:{cssReq:{position:"absolute",display:"block",padding:0,margin:0,overflow:"hidden",textAlign:"center",fontSize:"1px",cursor:"pointer",zIndex:1},cssDef:{background:"#AAA"}},content:{cssReq:{overflow:"auto"},cssDef:{}},defaults:{cssReq:{position:"absolute",margin:0,zIndex:2},cssDef:{padding:"10px",background:"#FFF",border:"1px solid #BBB",overflow:"auto"}},north:{edge:"top",sizeType:"height",dir:"horz",cssReq:{top:0,bottom:"auto",
|
47
47
|
left:0,right:0,width:"auto"}},south:{edge:"bottom",sizeType:"height",dir:"horz",cssReq:{top:"auto",bottom:0,left:0,right:0,width:"auto"}},east:{edge:"right",sizeType:"width",dir:"vert",cssReq:{left:"auto",right:0,top:"auto",bottom:"auto",height:"auto"}},west:{edge:"left",sizeType:"width",dir:"vert",cssReq:{left:0,right:"auto",top:"auto",bottom:"auto",height:"auto"}},center:{dir:"center",cssReq:{left:"auto",right:"auto",top:"auto",bottom:"auto",height:"auto",width:"auto"}}},q=t.container;(function(){sa();
|
48
|
-
qa();ta();ua();va();Q("all");
|
49
|
-
c){var d=T(b,c,"open");d&&d.attr("title","Open").click(function(e){K(c);e.stopPropagation()})},addCloseBtn:function(b,c){var d=T(b,c,"close");d&&d.attr("title","Close").click(function(e){I(c);e.stopPropagation()})},addPinBtn:function(b,c){var d=T(b,c,"pin");if(d){var e=t[c];d.click(function(f){Y(i(this),c,e.isSliding||e.isClosed);e.isSliding||e.isClosed?K(c):I(c);f.stopPropagation()});Y(d,c,!e.isClosed&&!e.isSliding);l[c].pins.push(b)}},allowOverflow:ea,resetOverflow:S,cssWidth:E,
|
48
|
+
qa();ta();ua();va();Q("all");p.scrollToBookmarkOnLoad&&self.location.hash&&replace(self.location.hash);ra();i(window).resize(function(){var b="timerLayout_"+t.id;window[b]&&clearTimeout(window[b]);window[b]=null;window[b]=setTimeout(ma,100)})})();return{options:p,state:t,panes:s,toggle:R,open:K,close:I,hide:$,show:W,resizeContent:Q,sizePane:ba,resizeAll:ma,addToggleBtn:function(b,c){var d=T(b,c,"toggle");if(d)d.attr("title",t[c].isClosed?"Open":"Close").click(function(e){R(c);e.stopPropagation()})},
|
49
|
+
addOpenBtn:function(b,c){var d=T(b,c,"open");d&&d.attr("title","Open").click(function(e){K(c);e.stopPropagation()})},addCloseBtn:function(b,c){var d=T(b,c,"close");d&&d.attr("title","Close").click(function(e){I(c);e.stopPropagation()})},addPinBtn:function(b,c){var d=T(b,c,"pin");if(d){var e=t[c];d.click(function(f){Y(i(this),c,e.isSliding||e.isClosed);e.isSliding||e.isClosed?K(c):I(c);f.stopPropagation()});Y(d,c,!e.isClosed&&!e.isSliding);l[c].pins.push(b)}},allowOverflow:ea,resetOverflow:S,cssWidth:E,
|
50
|
+
cssHeight:A}}})(jQuery);
|
@@ -0,0 +1,78 @@
|
|
1
|
+
/*! Copyright (c) 2010 Brandon Aaron (http://brandonaaron.net)
|
2
|
+
* Licensed under the MIT License (LICENSE.txt).
|
3
|
+
*
|
4
|
+
* Thanks to: http://adomas.org/javascript-mouse-wheel/ for some pointers.
|
5
|
+
* Thanks to: Mathias Bank(http://www.mathias-bank.de) for a scope bug fix.
|
6
|
+
* Thanks to: Seamus Leahy for adding deltaX and deltaY
|
7
|
+
*
|
8
|
+
* Version: 3.0.4
|
9
|
+
*
|
10
|
+
* Requires: 1.2.2+
|
11
|
+
*/
|
12
|
+
|
13
|
+
(function($) {
|
14
|
+
|
15
|
+
var types = ['DOMMouseScroll', 'mousewheel'];
|
16
|
+
|
17
|
+
$.event.special.mousewheel = {
|
18
|
+
setup: function() {
|
19
|
+
if ( this.addEventListener ) {
|
20
|
+
for ( var i=types.length; i; ) {
|
21
|
+
this.addEventListener( types[--i], handler, false );
|
22
|
+
}
|
23
|
+
} else {
|
24
|
+
this.onmousewheel = handler;
|
25
|
+
}
|
26
|
+
},
|
27
|
+
|
28
|
+
teardown: function() {
|
29
|
+
if ( this.removeEventListener ) {
|
30
|
+
for ( var i=types.length; i; ) {
|
31
|
+
this.removeEventListener( types[--i], handler, false );
|
32
|
+
}
|
33
|
+
} else {
|
34
|
+
this.onmousewheel = null;
|
35
|
+
}
|
36
|
+
}
|
37
|
+
};
|
38
|
+
|
39
|
+
$.fn.extend({
|
40
|
+
mousewheel: function(fn) {
|
41
|
+
return fn ? this.bind("mousewheel", fn) : this.trigger("mousewheel");
|
42
|
+
},
|
43
|
+
|
44
|
+
unmousewheel: function(fn) {
|
45
|
+
return this.unbind("mousewheel", fn);
|
46
|
+
}
|
47
|
+
});
|
48
|
+
|
49
|
+
|
50
|
+
function handler(event) {
|
51
|
+
var orgEvent = event || window.event, args = [].slice.call( arguments, 1 ), delta = 0, returnValue = true, deltaX = 0, deltaY = 0;
|
52
|
+
event = $.event.fix(orgEvent);
|
53
|
+
event.type = "mousewheel";
|
54
|
+
|
55
|
+
// Old school scrollwheel delta
|
56
|
+
if ( event.wheelDelta ) { delta = event.wheelDelta/120; }
|
57
|
+
if ( event.detail ) { delta = -event.detail/3; }
|
58
|
+
|
59
|
+
// New school multidimensional scroll (touchpads) deltas
|
60
|
+
deltaY = delta;
|
61
|
+
|
62
|
+
// Gecko
|
63
|
+
if ( orgEvent.axis !== undefined && orgEvent.axis === orgEvent.HORIZONTAL_AXIS ) {
|
64
|
+
deltaY = 0;
|
65
|
+
deltaX = -1*delta;
|
66
|
+
}
|
67
|
+
|
68
|
+
// Webkit
|
69
|
+
if ( orgEvent.wheelDeltaY !== undefined ) { deltaY = orgEvent.wheelDeltaY/120; }
|
70
|
+
if ( orgEvent.wheelDeltaX !== undefined ) { deltaX = -1*orgEvent.wheelDeltaX/120; }
|
71
|
+
|
72
|
+
// Add event and delta to the front of the arguments
|
73
|
+
args.unshift(event, delta, deltaX, deltaY);
|
74
|
+
|
75
|
+
return $.event.handle.apply(this, args);
|
76
|
+
}
|
77
|
+
|
78
|
+
})(jQuery);
|
@@ -0,0 +1,2 @@
|
|
1
|
+
(function(d){function g(a){var b=a||window.event,i=[].slice.call(arguments,1),c=0,h=0,e=0;a=d.event.fix(b);a.type="mousewheel";if(a.wheelDelta)c=a.wheelDelta/120;if(a.detail)c=-a.detail/3;e=c;if(b.axis!==undefined&&b.axis===b.HORIZONTAL_AXIS){e=0;h=-1*c}if(b.wheelDeltaY!==undefined)e=b.wheelDeltaY/120;if(b.wheelDeltaX!==undefined)h=-1*b.wheelDeltaX/120;i.unshift(a,c,h,e);return d.event.handle.apply(this,i)}var f=["DOMMouseScroll","mousewheel"];d.event.special.mousewheel={setup:function(){if(this.addEventListener)for(var a=
|
2
|
+
f.length;a;)this.addEventListener(f[--a],g,false);else this.onmousewheel=g},teardown:function(){if(this.removeEventListener)for(var a=f.length;a;)this.removeEventListener(f[--a],g,false);else this.onmousewheel=null}};d.fn.extend({mousewheel:function(a){return a?this.bind("mousewheel",a):this.trigger("mousewheel")},unmousewheel:function(a){return this.unbind("mousewheel",a)}})})(jQuery);
|
@@ -0,0 +1,212 @@
|
|
1
|
+
/*!
|
2
|
+
* jQuery Offline
|
3
|
+
* Version 1.0.0
|
4
|
+
*
|
5
|
+
* http://github.com/wycats/jquery-offline
|
6
|
+
*
|
7
|
+
* Copyright 2010, Yehuda Katz
|
8
|
+
*
|
9
|
+
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
10
|
+
* of this software and associated documentation files (the "Software"), to deal
|
11
|
+
* in the Software without restriction, including without limitation the rights
|
12
|
+
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
13
|
+
* copies of the Software, and to permit persons to whom the Software is
|
14
|
+
* furnished to do so, subject to the following conditions:
|
15
|
+
*
|
16
|
+
* The above copyright notice and this permission notice shall be included in
|
17
|
+
* all copies or substantial portions of the Software.
|
18
|
+
*
|
19
|
+
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
20
|
+
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
21
|
+
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
22
|
+
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
23
|
+
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
24
|
+
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
25
|
+
* THE SOFTWARE.
|
26
|
+
*
|
27
|
+
* Date: Fri Jul 9 10:20:00 2010 -0800
|
28
|
+
*/
|
29
|
+
|
30
|
+
(function($) {
|
31
|
+
|
32
|
+
var prefix = "offline.jquery:",
|
33
|
+
mostRecent = null,
|
34
|
+
requesting = {};
|
35
|
+
|
36
|
+
// Allow the user to explicitly turn off localStorage
|
37
|
+
// before loading this plugin
|
38
|
+
if (typeof $.support.localStorage === "undefined") {
|
39
|
+
$.support.localStorage = !!window.localStorage;
|
40
|
+
}
|
41
|
+
|
42
|
+
// modified getJSON which uses ifModified: true
|
43
|
+
function getJSON(url, data, fn) {
|
44
|
+
if (jQuery.isFunction(data)) {
|
45
|
+
fn = data;
|
46
|
+
data = null;
|
47
|
+
}
|
48
|
+
|
49
|
+
var requestingKey = url + "?" + $.param(data || {});
|
50
|
+
if (requesting[requestingKey]) {
|
51
|
+
return false;
|
52
|
+
}
|
53
|
+
|
54
|
+
requesting[requestingKey] = true;
|
55
|
+
|
56
|
+
return jQuery.ajax({
|
57
|
+
type: "GET",
|
58
|
+
url: url,
|
59
|
+
data: data,
|
60
|
+
success: function(responseData, text) {
|
61
|
+
delete requesting[requestingKey];
|
62
|
+
|
63
|
+
// handle lack of response (error callback isn't called in this case)
|
64
|
+
if (undefined === responseData) {
|
65
|
+
if (!window.navigator.onLine) {
|
66
|
+
// requeue the request for the next time we come online
|
67
|
+
mostRecent = function() {
|
68
|
+
getJSON(url, data, fn);
|
69
|
+
};
|
70
|
+
}
|
71
|
+
return;
|
72
|
+
}
|
73
|
+
|
74
|
+
fn(responseData, text);
|
75
|
+
},
|
76
|
+
error: function() {
|
77
|
+
delete requesting[requestingKey];
|
78
|
+
},
|
79
|
+
dataType: "json",
|
80
|
+
ifModified: true
|
81
|
+
});
|
82
|
+
}
|
83
|
+
|
84
|
+
if ($.support.localStorage) {
|
85
|
+
// If localStorage is available, define jQuery.retrieveJSON
|
86
|
+
// and jQuery.clearJSON to operate in terms of the offline
|
87
|
+
// cache
|
88
|
+
// If the user comes online, run the most recent request
|
89
|
+
// that was queued due to the user being offline
|
90
|
+
$(window).bind("online", function() {
|
91
|
+
if (mostRecent) {
|
92
|
+
mostRecent();
|
93
|
+
}
|
94
|
+
});
|
95
|
+
|
96
|
+
// If the user goes offline, hide any loading bar
|
97
|
+
// the user may have created
|
98
|
+
$(window).bind("offline", function() {
|
99
|
+
jQuery.event.trigger("ajaxStop");
|
100
|
+
});
|
101
|
+
|
102
|
+
$.retrieveJSON = function(url, data, fn) {
|
103
|
+
// allow jQuery.retrieveJSON(url, fn)
|
104
|
+
if ($.isFunction(data)) {
|
105
|
+
fn = data;
|
106
|
+
data = {};
|
107
|
+
}
|
108
|
+
|
109
|
+
// remember when this request started so we can report
|
110
|
+
// the time when a follow-up Ajax request completes.
|
111
|
+
// this is especially important when the user comes
|
112
|
+
// back online, since retrieveDate may be minutes,
|
113
|
+
// hours or even days before the Ajax request finally
|
114
|
+
// completes
|
115
|
+
var retrieveDate = new Date;
|
116
|
+
|
117
|
+
// get a String value for the data passed in, and then
|
118
|
+
// use it to calculate a cache key
|
119
|
+
var param = $.param(data),
|
120
|
+
key = prefix + url + ":" + param,
|
121
|
+
text = localStorage[key],
|
122
|
+
dateString = localStorage[key + ":date"],
|
123
|
+
date = new Date(Date.parse(dateString));
|
124
|
+
|
125
|
+
function cleanupLocalStorage() {
|
126
|
+
// take all date keys and remove the oldest half
|
127
|
+
var dateKeys = [];
|
128
|
+
for (var i = 0; i < localStorage.length; ++i) {
|
129
|
+
var key = localStorage.key(i);
|
130
|
+
if (/:date$/.test(key)) {
|
131
|
+
dateKeys.push(key);
|
132
|
+
}
|
133
|
+
}
|
134
|
+
dateKeys.sort(function(a, b) {
|
135
|
+
var date_a = localStorage[a], date_b = localStorage[b];
|
136
|
+
return date_a < date_b ? -1 : (date_a > date_b ? +1 : 0);
|
137
|
+
});
|
138
|
+
for (var i = 0; i < dateKeys.length / 2; ++i) {
|
139
|
+
var key = dateKeys[i];
|
140
|
+
delete localStorage[key];
|
141
|
+
delete localStorage[key.substr(0, key.length - 5)]; // :date
|
142
|
+
}
|
143
|
+
}
|
144
|
+
|
145
|
+
// create a function that will make an Ajax request and
|
146
|
+
// store the result in the cache. This function will be
|
147
|
+
// deferred until later if the user is offline
|
148
|
+
function getData() {
|
149
|
+
getJSON(url, data, function(json, status) {
|
150
|
+
if ( status == 'notmodified' ) {
|
151
|
+
// Just return if the response has a 304 status code
|
152
|
+
return false;
|
153
|
+
}
|
154
|
+
|
155
|
+
while (true) {
|
156
|
+
try {
|
157
|
+
localStorage[key] = JSON.stringify(json);
|
158
|
+
localStorage[key + ":date"] = new Date;
|
159
|
+
break;
|
160
|
+
} catch (e) {
|
161
|
+
if (e.name == "QUOTA_EXCEEDED_ERR" || e.name ==
|
162
|
+
"NS_ERROR_DOM_QUOTA_REACHED") {
|
163
|
+
cleanupLocalStorage();
|
164
|
+
}
|
165
|
+
}
|
166
|
+
}
|
167
|
+
|
168
|
+
// If this is a follow-up request, create an object
|
169
|
+
// containing both the original time of the cached
|
170
|
+
// data and the time that the data was originally
|
171
|
+
// retrieved from the cache. With this information,
|
172
|
+
// users of jQuery Offline can provide the user
|
173
|
+
// with improved feedback if the lag is large
|
174
|
+
var data = text && { cachedAt: date, retrievedAt: retrieveDate };
|
175
|
+
fn(json, status, data);
|
176
|
+
});
|
177
|
+
}
|
178
|
+
|
179
|
+
// If there is anything in the cache, call the callback
|
180
|
+
// right away, with the "cached" status string
|
181
|
+
if( text ) {
|
182
|
+
var response = fn( $.parseJSON(text), "cached", { cachedAt: date } );
|
183
|
+
if( response === false ) return false;
|
184
|
+
}
|
185
|
+
|
186
|
+
// If the user is online, make the Ajax request right away;
|
187
|
+
// otherwise, make it the most recent callback so it will
|
188
|
+
// get triggered when the user comes online
|
189
|
+
if (window.navigator.onLine) {
|
190
|
+
getData();
|
191
|
+
} else {
|
192
|
+
mostRecent = getData;
|
193
|
+
}
|
194
|
+
|
195
|
+
return true;
|
196
|
+
};
|
197
|
+
|
198
|
+
// jQuery.clearJSON is simply a wrapper around deleting the
|
199
|
+
// localStorage for a URL/data pair
|
200
|
+
$.clearJSON = function(url, data) {
|
201
|
+
var param = $.param(data || {});
|
202
|
+
delete localStorage[prefix + url + ":" + param];
|
203
|
+
delete localStorage[prefix + url + ":" + param + ":date"];
|
204
|
+
};
|
205
|
+
} else {
|
206
|
+
// If localStorage is unavailable, just make all requests
|
207
|
+
// regular Ajax requests.
|
208
|
+
$.retrieveJSON = getJSON;
|
209
|
+
$.clearJSON = $.noop;
|
210
|
+
}
|
211
|
+
|
212
|
+
})(jQuery);
|
@@ -0,0 +1,4 @@
|
|
1
|
+
(function(a){function m(e,b,c){if(jQuery.isFunction(b)){c=b;b=null}var h=e+"?"+a.param(b||{});if(j[h])return false;j[h]=true;return jQuery.ajax({type:"GET",url:e,data:b,success:function(i,n){delete j[h];if(undefined===i)window.navigator.onLine||(k=function(){m(e,b,c)});else c(i,n)},error:function(){delete j[h]},dataType:"json",ifModified:true})}var k=null,j={};if(typeof a.support.localStorage==="undefined")a.support.localStorage=!!window.localStorage;if(a.support.localStorage){a(window).bind("online",
|
2
|
+
function(){k&&k()});a(window).bind("offline",function(){jQuery.event.trigger("ajaxStop")});a.retrieveJSON=function(e,b,c){function h(){for(var g=[],d=0;d<localStorage.length;++d){var f=localStorage.key(d);/:date$/.test(f)&&g.push(f)}g.sort(function(s,t){var p=localStorage[s],q=localStorage[t];return p<q?-1:p>q?+1:0});for(d=0;d<g.length/2;++d){f=g[d];delete localStorage[f];delete localStorage[f.substr(0,f.length-5)]}}function i(){m(e,b,function(g,d){if(d=="notmodified")return false;for(;;)try{localStorage[l]=
|
3
|
+
JSON.stringify(g);localStorage[l+":date"]=new Date;break}catch(f){if(f.name=="QUOTA_EXCEEDED_ERR"||f.name=="NS_ERROR_DOM_QUOTA_REACHED")h()}c(g,d,o&&{cachedAt:r,retrievedAt:n})})}if(a.isFunction(b)){c=b;b={}}var n=new Date,u=a.param(b),l="offline.jquery:"+e+":"+u,o=localStorage[l],r=new Date(Date.parse(localStorage[l+":date"]));if(o)if(c(a.parseJSON(o),"cached",{cachedAt:r})===false)return false;if(window.navigator.onLine)i();else k=i;return true};a.clearJSON=function(e,b){var c=a.param(b||{});delete localStorage["offline.jquery:"+
|
4
|
+
e+":"+c];delete localStorage["offline.jquery:"+e+":"+c+":date"]}}else{a.retrieveJSON=m;a.clearJSON=a.noop}})(jQuery);
|
@@ -1,6 +1,7 @@
|
|
1
1
|
/*!
|
2
|
-
* jQuery Templates Plugin
|
2
|
+
* jQuery Templates Plugin 1.0.0pre
|
3
3
|
* http://github.com/jquery/jquery-tmpl
|
4
|
+
* Requires jQuery 1.4.2
|
4
5
|
*
|
5
6
|
* Copyright Software Freedom Conservancy, Inc.
|
6
7
|
* Dual licensed under the MIT or GPL Version 2 licenses.
|
@@ -27,7 +28,7 @@
|
|
27
28
|
update: tiUpdate
|
28
29
|
};
|
29
30
|
if ( options ) {
|
30
|
-
jQuery.extend( newItem, options, { nodes: [], parent: parentItem }
|
31
|
+
jQuery.extend( newItem, options, { nodes: [], parent: parentItem });
|
31
32
|
}
|
32
33
|
if ( fn ) {
|
33
34
|
// Build the hierarchical content to be used during insertion into DOM
|
@@ -60,7 +61,7 @@
|
|
60
61
|
for ( i = 0, l = insert.length; i < l; i++ ) {
|
61
62
|
cloneIndex = i;
|
62
63
|
elems = (i > 0 ? this.clone(true) : this).get();
|
63
|
-
jQuery
|
64
|
+
jQuery( insert[i] )[ original ]( elems );
|
64
65
|
ret = ret.concat( elems );
|
65
66
|
}
|
66
67
|
cloneIndex = 0;
|
@@ -91,14 +92,9 @@
|
|
91
92
|
},
|
92
93
|
|
93
94
|
domManip: function( args, table, callback, options ) {
|
94
|
-
|
95
|
-
|
96
|
-
|
97
|
-
var dmArgs = jQuery.makeArray( arguments ), argsLength = args.length, i = 0, tmplItem;
|
98
|
-
while ( i < argsLength && !(tmplItem = jQuery.data( args[i++], "tmplItem" ))) {}
|
99
|
-
if ( argsLength > 1 ) {
|
100
|
-
dmArgs[0] = [jQuery.makeArray( args )];
|
101
|
-
}
|
95
|
+
if ( args[0] && jQuery.isArray( args[0] )) {
|
96
|
+
var dmArgs = jQuery.makeArray( arguments ), elems = args[0], elemsLength = elems.length, i = 0, tmplItem;
|
97
|
+
while ( i < elemsLength && !(tmplItem = jQuery.data( elems[i++], "tmplItem" ))) {}
|
102
98
|
if ( tmplItem && cloneIndex ) {
|
103
99
|
dmArgs[2] = function( fragClone ) {
|
104
100
|
// Handler called by oldManip when rendered template has been inserted into DOM.
|
@@ -187,7 +183,10 @@
|
|
187
183
|
}
|
188
184
|
if ( tmpl.nodeType ) {
|
189
185
|
// If this is a template block, use cached copy, or generate tmpl function and cache.
|
190
|
-
tmpl = jQuery.data( tmpl, "tmpl" ) || jQuery.data( tmpl, "tmpl", buildTmplFn( tmpl.innerHTML ));
|
186
|
+
tmpl = jQuery.data( tmpl, "tmpl" ) || jQuery.data( tmpl, "tmpl", buildTmplFn( tmpl.innerHTML ));
|
187
|
+
// Issue: In IE, if the container element is not a script block, the innerHTML will remove quotes from attribute values whenever the value does not include white space.
|
188
|
+
// This means that foo="${x}" will not work if the value of x includes white space: foo="${x}" -> foo=value of x.
|
189
|
+
// To correct this, include space in tag: foo="${ x }" -> foo="value of x"
|
191
190
|
}
|
192
191
|
return typeof name === "string" ? (jQuery.template[name] = tmpl) : tmpl;
|
193
192
|
}
|
@@ -341,7 +340,7 @@
|
|
341
340
|
args = args ? ("," + unescape( args ) + ")") : (parens ? ")" : "");
|
342
341
|
// Support for target being things like a.toLowerCase();
|
343
342
|
// In that case don't call with template item as 'this' pointer. Just evaluate...
|
344
|
-
expr = parens ? (target.indexOf(".") > -1 ? target + parens : ("(" + target + ").call($item" + args)) : target;
|
343
|
+
expr = parens ? (target.indexOf(".") > -1 ? target + unescape( parens ) : ("(" + target + ").call($item" + args)) : target;
|
345
344
|
exprAutoFnDetect = parens ? expr : "(typeof(" + target + ")==='function'?(" + target + ").call($item):(" + target + "))";
|
346
345
|
} else {
|
347
346
|
exprAutoFnDetect = expr = def.$1 || "null";
|
@@ -352,13 +351,7 @@
|
|
352
351
|
.split( "$notnull_1" ).join( target ? "typeof(" + target + ")!=='undefined' && (" + target + ")!=null" : "true" )
|
353
352
|
.split( "$1a" ).join( exprAutoFnDetect )
|
354
353
|
.split( "$1" ).join( expr )
|
355
|
-
.split( "$2" ).join( fnargs
|
356
|
-
fnargs.replace( /\s*([^\(]+)\s*(\((.*?)\))?/g, function( all, name, parens, params ) {
|
357
|
-
params = params ? ("," + params + ")") : (parens ? ")" : "");
|
358
|
-
return params ? ("(" + name + ").call($item" + params) : all;
|
359
|
-
})
|
360
|
-
: (def.$2||"")
|
361
|
-
) +
|
354
|
+
.split( "$2" ).join( fnargs || def.$2 || "" ) +
|
362
355
|
"_.push('";
|
363
356
|
}) +
|
364
357
|
"');}return _;"
|
@@ -407,7 +400,7 @@
|
|
407
400
|
if ( !(tmplItem = newTmplItems[key]) ) {
|
408
401
|
// The item is for wrapped content, and was copied from the temporary parent wrappedItem.
|
409
402
|
tmplItem = wrappedItems[key];
|
410
|
-
tmplItem = newTmplItem( tmplItem, newTmplItems[pntNode]||wrappedItems[pntNode]
|
403
|
+
tmplItem = newTmplItem( tmplItem, newTmplItems[pntNode]||wrappedItems[pntNode] );
|
411
404
|
tmplItem.key = ++itemKey;
|
412
405
|
newTmplItems[itemKey] = tmplItem;
|
413
406
|
}
|
@@ -443,7 +436,7 @@
|
|
443
436
|
function cloneTmplItem( key ) {
|
444
437
|
key = key + keySuffix;
|
445
438
|
tmplItem = newClonedItems[key] =
|
446
|
-
(newClonedItems[key] || newTmplItem( tmplItem, newTmplItems[tmplItem.parent.key + keySuffix] || tmplItem.parent
|
439
|
+
(newClonedItems[key] || newTmplItem( tmplItem, newTmplItems[tmplItem.parent.key + keySuffix] || tmplItem.parent ));
|
447
440
|
}
|
448
441
|
}
|
449
442
|
}
|
@@ -1,12 +1,12 @@
|
|
1
|
-
(function(d){function s(a,b,e,c){c={data:c||(b?b.data:{}),_wrap:b?b._wrap:null,tmpl:null,parent:b||null,nodes:[],calls:I,nest:J,wrap:K,html:L,update:M};a&&d.extend(c,a,{nodes:[],parent:b});if(e){c.tmpl=e;c._ctnt=c._ctnt||c.tmpl(d,c);c.key=++t;(y.length?u:
|
2
|
-
function(f,g,h,j){c=d(h).get();
|
3
|
-
function(b,e,c,f,g,h,j){b=d.tmpl.tag[c];if(!b)throw"Template command not found: "+c;c=b._default||[];if(h&&!/\w$/.test(g)){g+=h;h=""}if(g){g=
|
4
|
-
|
5
|
-
|
6
|
-
b,e
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
1
|
+
(function(d){function s(a,b,e,c){c={data:c||(b?b.data:{}),_wrap:b?b._wrap:null,tmpl:null,parent:b||null,nodes:[],calls:I,nest:J,wrap:K,html:L,update:M};a&&d.extend(c,a,{nodes:[],parent:b});if(e){c.tmpl=e;c._ctnt=c._ctnt||c.tmpl(d,c);c.key=++t;(y.length?u:l)[t]=c}return c}function v(a,b,e){var c;e=e?d.map(e,function(f){return typeof f==="string"?a.key?f.replace(/(<\w+)(?=[\s>])(?![^>]*_tmplitem)([^>]*)/g,"$1 "+q+'="'+a.key+'" $2'):f:v(f,a,f._ctnt)}):a;if(b)return e;e=e.join("");e.replace(/^\s*([^<\s][^<]*)?(<[\w\W]+>)([^>]*[^>\s])?\s*$/,
|
2
|
+
function(f,g,h,j){c=d(h).get();B(c);if(g)c=z(g).concat(c);if(j)c=c.concat(z(j))});return c?c:z(e)}function z(a){var b=document.createElement("div");b.innerHTML=a;return d.makeArray(b.childNodes)}function C(a){return new Function("jQuery","$item","var $=jQuery,call,_=[],$data=$item.data;with($data){_.push('"+d.trim(a).replace(/([\\'])/g,"\\$1").replace(/[\r\t\n]/g," ").replace(/\$\{([^\}]*)\}/g,"{{= $1}}").replace(/\{\{(\/?)(\w+|.)(?:\(((?:[^\}]|\}(?!\}))*?)?\))?(?:\s+(.*?)?)?(\(((?:[^\}]|\}(?!\}))*?)\))?\s*\}\}/g,
|
3
|
+
function(b,e,c,f,g,h,j){b=d.tmpl.tag[c];if(!b)throw"Template command not found: "+c;c=b._default||[];if(h&&!/\w$/.test(g)){g+=h;h=""}if(g){g=w(g);j=j?","+w(j)+")":h?")":"";j=h?g.indexOf(".")>-1?g+w(h):"("+g+").call($item"+j:g;h=h?j:"(typeof("+g+")==='function'?("+g+").call($item):("+g+"))"}else h=j=c.$1||"null";f=w(f);return"');"+b[e?"close":"open"].split("$notnull_1").join(g?"typeof("+g+")!=='undefined' && ("+g+")!=null":"true").split("$1a").join(h).split("$1").join(j).split("$2").join(f||c.$2||
|
4
|
+
"")+"_.push('"})+"');}return _;")}function D(a,b){a._wrap=v(a,true,d.isArray(b)?b:[E.test(b)?b:d(b).html()]).join("")}function w(a){return a?a.replace(/\\'/g,"'").replace(/\\\\/g,"\\"):null}function B(a){function b(o){function F(A){A+=e;i=g[A]=g[A]||s(i,l[i.parent.key+e]||i.parent)}var m,k=o,i,r;if(r=o.getAttribute(q)){for(;k.parentNode&&(k=k.parentNode).nodeType===1&&!(m=k.getAttribute(q)););if(m!==r){k=k.parentNode?k.nodeType===11?0:k.getAttribute(q)||0:0;if(!(i=l[r])){i=u[r];i=s(i,l[k]||u[k]);
|
5
|
+
i.key=++t;l[t]=i}n&&F(r)}o.removeAttribute(q)}else if(n&&(i=d.data(o,"tmplItem"))){F(i.key);l[i.key]=i;k=(k=d.data(o.parentNode,"tmplItem"))?k.key:0}if(i){for(m=i;m&&m.key!=k;){m.nodes.push(o);m=m.parent}delete i._ctnt;delete i._wrap;d.data(o,"tmplItem",i)}}var e="_"+n,c,f,g={},h,j,p;h=0;for(j=a.length;h<j;h++)if((c=a[h]).nodeType===1){f=c.getElementsByTagName("*");for(p=f.length-1;p>=0;p--)b(f[p]);b(c)}}function I(a,b,e,c){if(!a)return y.pop();y.push({_:a,tmpl:b,item:this,data:e,options:c})}function J(a,
|
6
|
+
b,e){return d.tmpl(d.template(a),b,e,this)}function K(a,b){var e=a.options||{};e.wrapped=b;return d.tmpl(d.template(a.tmpl),a.data,e,a.item)}function L(a,b){var e=this._wrap;return d.map(d(d.isArray(e)?e.join(""):e).filter(a||"*"),function(c){if(b)c=c.innerText||c.textContent;else{var f;if(!(f=c.outerHTML)){f=document.createElement("div");f.appendChild(c.cloneNode(true));f=f.innerHTML}c=f}return c})}function M(){var a=this.nodes;d.tmpl(null,null,null,this).insertBefore(a[0]);d(a).remove()}var G=d.fn.domManip,
|
7
|
+
q="_tmplitem",E=/^[^<]*(<[\w\W]+>)[^>]*$|\{\{\! /,l={},u={},x,H={key:0,data:{}},t=0,n=0,y=[];d.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(a,b){d.fn[a]=function(e){var c=[];e=d(e);var f,g,h;f=this.length===1&&this[0].parentNode;x=l||{};if(f&&f.nodeType===11&&f.childNodes.length===1&&e.length===1){e[b](this[0]);c=this}else{g=0;for(h=e.length;g<h;g++){n=g;f=(g>0?this.clone(true):this).get();d(e[g])[b](f);c=c.concat(f)}n=0;
|
8
|
+
c=this.pushStack(c,a,e.selector)}e=x;x=null;d.tmpl.complete(e);return c}});d.fn.extend({tmpl:function(a,b,e){return d.tmpl(this[0],a,b,e)},tmplItem:function(){return d.tmplItem(this[0])},template:function(a){return d.template(a,this[0])},domManip:function(a,b,e){if(a[0]&&d.isArray(a[0])){for(var c=d.makeArray(arguments),f=a[0],g=f.length,h=0,j;h<g&&!(j=d.data(f[h++],"tmplItem")););if(j&&n)c[2]=function(p){d.tmpl.afterManip(this,p,e)};G.apply(this,c)}else G.apply(this,arguments);n=0;x||d.tmpl.complete(l);
|
9
|
+
return this}});d.extend({tmpl:function(a,b,e,c){var f=!c;if(f){c=H;a=d.template[a]||d.template(null,a);u={}}else if(!a){a=c.tmpl;l[c.key]=c;c.nodes=[];c.wrapped&&D(c,c.wrapped);return d(v(c,null,c.tmpl(d,c)))}if(!a)return[];if(typeof b==="function")b=b.call(c||{});e&&e.wrapped&&D(e,e.wrapped);b=d.isArray(b)?d.map(b,function(g){return g?s(e,c,a,g):null}):[s(e,c,a,b)];return f?d(v(c,null,b)):b},tmplItem:function(a){var b;if(a instanceof d)a=a[0];for(;a&&a.nodeType===1&&!(b=d.data(a,"tmplItem"))&&(a=
|
10
|
+
a.parentNode););return b||H},template:function(a,b){if(b){if(typeof b==="string")b=C(b);else if(b instanceof d)b=b[0]||{};if(b.nodeType)b=d.data(b,"tmpl")||d.data(b,"tmpl",C(b.innerHTML));return typeof a==="string"?d.template[a]=b:b}return a?typeof a!=="string"?d.template(null,a):d.template[a]||d.template(null,E.test(a)?a:d(a)):null},encode:function(a){return(""+a).split("<").join("<").split(">").join(">").split('"').join(""").split("'").join("'")}});d.extend(d.tmpl,{tag:{tmpl:{_default:{$2:"null"},
|
11
|
+
open:"if($notnull_1){_=_.concat($item.nest($1,$2));}"},wrap:{_default:{$2:"null"},open:"$item.calls(_,$1,$2);_=[];",close:"call=$item.calls();_=call._.concat($item.wrap(call,_));"},each:{_default:{$2:"$index, $value"},open:"if($notnull_1){$.each($1a,function($2){with(this){",close:"}});}"},"if":{open:"if(($notnull_1) && $1a){",close:"}"},"else":{_default:{$1:"true"},open:"}else if(($notnull_1) && $1a){"},html:{open:"if($notnull_1){_.push($1a);}"},"=":{_default:{$1:"$data"},open:"if($notnull_1){_.push($.encode($1a));}"},
|
12
|
+
"!":{open:""}},complete:function(){l={}},afterManip:function(a,b,e){var c=b.nodeType===11?d.makeArray(b.childNodes):b.nodeType===1?[b]:[];e.call(a,b);B(c);n++}})})(jQuery);
|