1/* 2 * FancyBox - jQuery Plugin 3 * Simple and fancy lightbox alternative 4 * 5 * Examples and documentation at: http://fancybox.net 6 * 7 * Copyright (c) 2008 - 2010 Janis Skarnelis 8 * That said, it is hardly a one-person project. Many people have submitted bugs, code, and offered their advice freely. Their support is greatly appreciated. 9 * 10 * Version: 1.3.4 11 * Requires: jQuery v1.3+ 12 * 13 * Dual licensed under the MIT and GPL licenses: 14 * http://www.opensource.org/licenses/mit-license.php 15 * http://www.gnu.org/licenses/gpl.html 16 */ 17 18;(function (b) { 19 var m, t, u, f, D, j, E, n, z, A, q = 0, e = {}, o = [], p = 0, d = {}, l = [], G = null, v = new Image, J = /\.(jpg|gif|png|bmp|jpeg)(.*)?$/i, W = /[^\.]\.(swf)\s*$/i, K, L = 1, y = 0, s = "", r, i, h = false, B = b.extend(b("<div/>")[0], {prop: 0}), M = b.browser.msie && b.browser.version < 7 && !window.XMLHttpRequest, N = function () { 20 t.hide(); 21 v.onerror = v.onload = null; 22 G && G.abort(); 23 m.empty() 24 }, O = function () { 25 if (false === e.onError(o, q, e)) { 26 t.hide(); 27 h = false 28 } else { 29 e.titleShow = false; 30 e.width = "auto"; 31 e.height = "auto"; 32 m.html('<p id="fancybox-error">The requested content cannot be loaded.<br />Please try again later.</p>'); 33 F() 34 } 35 }, I = function () { 36 var a = o[q], c, g, k, C, P, w; 37 N(); 38 e = b.extend({}, b.fn.fancybox.defaults, typeof b(a).data("fancybox") == "undefined" ? e : b(a).data("fancybox")); 39 w = e.onStart(o, q, e); 40 if (w === false) h = false; else { 41 if (typeof w == "object") e = b.extend(e, w); 42 k = e.title || (a.nodeName ? b(a).attr("title") : a.title) || ""; 43 if (a.nodeName && !e.orig) e.orig = b(a).children("img:first").length ? b(a).children("img:first") : b(a); 44 if (k === "" && e.orig && e.titleFromAlt) k = e.orig.attr("alt"); 45 c = e.href || (a.nodeName ? b(a).attr("href") : a.href) || null; 46 if (/^(?:javascript)/i.test(c) || 47 c == "#") c = null; 48 if (e.type) { 49 g = e.type; 50 if (!c) c = e.content 51 } else if (e.content) g = "html"; else if (c) g = c.match(J) ? "image" : c.match(W) ? "swf" : b(a).hasClass("iframe") ? "iframe" : c.indexOf("#") === 0 ? "inline" : "ajax"; 52 if (g) { 53 if (g == "inline") { 54 a = c.substr(c.indexOf("#")); 55 g = b(a).length > 0 ? "inline" : "ajax" 56 } 57 e.type = g; 58 e.href = c; 59 e.title = k; 60 if (e.autoDimensions)if (e.type == "html" || e.type == "inline" || e.type == "ajax") { 61 e.width = "auto"; 62 e.height = "auto" 63 } else e.autoDimensions = false; 64 if (e.modal) { 65 e.overlayShow = true; 66 e.hideOnOverlayClick = false; 67 e.hideOnContentClick = 68 false; 69 e.enableEscapeButton = false; 70 e.showCloseButton = false 71 } 72 e.padding = parseInt(e.padding, 10); 73 e.margin = parseInt(e.margin, 10); 74 m.css("padding", e.padding + e.margin); 75 b(".fancybox-inline-tmp").unbind("fancybox-cancel").bind("fancybox-change", function () { 76 b(this).replaceWith(j.children()) 77 }); 78 switch (g) { 79 case "html": 80 m.html(e.content); 81 F(); 82 break; 83 case "inline": 84 if (b(a).parent().is("#fancybox-content") === true) { 85 h = false; 86 break 87 } 88 b('<div class="fancybox-inline-tmp" />').hide().insertBefore(b(a)).bind("fancybox-cleanup", function () { 89 b(this).replaceWith(j.children()) 90 }).bind("fancybox-cancel", 91 function () { 92 b(this).replaceWith(m.children()) 93 }); 94 b(a).appendTo(m); 95 F(); 96 break; 97 case "image": 98 h = false;
99 b.fancybox.showActivity(); 100 v = new Image; 101 v.onerror = function () { 102 O() 103 }; 104 v.onload = function () { 105 h = true; 106 v.onerror = v.onload = null; 107 e.width = v.width; 108 e.height = v.height; 109 b("<img />").attr({id: "fancybox-img", src: v.src, alt: e.title}).appendTo(m); 110 Q() 111 }; 112 v.src = c; 113 break; 114 case "swf": 115 e.scrolling = "no"; 116 C = '<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" width="' + e.width + '" height="' + e.height + '"><param name="movie" value="' + c + 117 '"></param>'; 118 P = ""; 119 b.each(e.swf, function (x, H) { 120 C += '<param name="' + x + '" value="' + H + '"></param>'; 121 P += " " + x + '="' + H + '"' 122 }); 123 C += '<embed src="' + c + '" type="application/x-shockwave-flash" width="' + e.width + '" height="' + e.height + '"' + P + "></embed></object>"; 124 m.html(C); 125 F(); 126 break; 127 case "ajax": 128 h = false; 129 b.fancybox.showActivity(); 130 e.ajax.win = e.ajax.success; 131 G = b.ajax(b.extend({}, e.ajax, { 132 url: c, data: e.ajax.data || {}, error: function (x) { 133 x.status > 0 && O() 134 }, success: function (x, H, R) { 135 if ((typeof R == "object" ? R : G).status == 200) { 136 if (typeof e.ajax.win == 137 "function") { 138 w = e.ajax.win(c, x, H, R); 139 if (w === false) { 140 t.hide(); 141 return 142 } else if (typeof w == "string" || typeof w == "object") x = w 143 } 144 m.html(x); 145 F() 146 } 147 } 148 })); 149 break; 150 case "iframe": 151 Q() 152 } 153 } else O() 154 } 155 }, F = function () { 156 var a = e.width, c = e.height; 157 a = a.toString().indexOf("%") > -1 ? parseInt((b(window).width() - e.margin * 2) * parseFloat(a) / 100, 10) + "px" : a == "auto" ? "auto" : a + "px"; 158 c = c.toString().indexOf("%") > -1 ? parseInt((b(window).height() - e.margin * 2) * parseFloat(c) / 100, 10) + "px" : c == "auto" ? "auto" : c + "px"; 159 m.wrapInner('<div style="width:' + a + ";height:" + c + 160 ";overflow: " + (e.scrolling == "auto" ? "auto" : e.scrolling == "yes" ? "scroll" : "hidden") + ';position:relative;"></div>'); 161 e.width = m.width(); 162 e.height = m.height(); 163 Q() 164 }, Q = function () { 165 var a, c; 166 t.hide(); 167 if (f.is(":visible") && false === d.onCleanup(l, p, d)) { 168 b.event.trigger("fancybox-cancel"); 169 h = false 170 } else { 171 h = true; 172 b(j.add(u)).unbind(); 173 b(window).unbind("resize.fb scroll.fb"); 174 b(document).unbind("keydown.fb"); 175 f.is(":visible") && d.titlePosition !== "outside" && f.css("height", f.height()); 176 l = o; 177 p = q; 178 d = e; 179 if (d.overlayShow) { 180 u.css({ 181 "background-color": d.overlayColor, 182 opacity: d.overlayOpacity, 183 cursor: d.hideOnOverlayClick ? "pointer" : "auto", 184 height: b(document).height() 185 }); 186 if (!u.is(":visible")) { 187 M && b("select:not(#fancybox-tmp select)").filter(function () { 188 return this.style.visibility !== "hidden" 189 }).css({visibility: "hidden"}).one("fancybox-cleanup", function () { 190 this.style.visibility = "inherit" 191 }); 192 u.show() 193 } 194 } else u.hide(); 195 i = X(); 196 s = d.title || ""; 197 y = 0; 198 n.empty().removeAttr("style").removeClass(); 199 if (d.titleShow !== false) { 200 if (b.isFunction(d.titleFormat)) a = d.titleFormat(s, l, p, d); else a = s && s.length ? 201 d.titlePosition == "float" ? '<table id="fancybox-title-float-wrap" cellpadding="0" cellspacing="0"><tr><td id="fancybox-title-float-left"></td><td id="fancybox-title-float-main">' + s + '</td><td id="fancybox-title-float-right"></td></tr></table>' : '<div id="fancybox-title-' + d.titlePosition + '">' + s + "</div>" : false;
202 s = a; 203 if (!(!s || s === "")) { 204 n.addClass("fancybox-title-" + d.titlePosition).html(s).appendTo("body").show(); 205 switch (d.titlePosition) { 206 case "inside": 207 n.css({width: i.width - d.padding * 2, marginLeft: d.padding, marginRight: d.padding}); 208 y = n.outerHeight(true); 209 n.appendTo(D); 210 i.height += y; 211 break; 212 case "over": 213 n.css({ 214 marginLeft: d.padding, 215 width: i.width - d.padding * 2, 216 bottom: d.padding 217 }).appendTo(D); 218 break; 219 case "float": 220 n.css("left", parseInt((n.width() - i.width - 40) / 2, 10) * -1).appendTo(f); 221 break; 222 default: 223 n.css({ 224 width: i.width - d.padding * 2, 225 paddingLeft: d.padding, 226 paddingRight: d.padding 227 }).appendTo(f) 228 } 229 } 230 } 231 n.hide(); 232 if (f.is(":visible")) { 233 b(E.add(z).add(A)).hide(); 234 a = f.position(); 235 r = {top: a.top, left: a.left, width: f.width(), height: f.he
235ight()}; 236 c = r.width == i.width && r.height == 237 i.height; 238 j.fadeTo(d.changeFade, 0.3, function () { 239 var g = function () { 240 j.html(m.contents()).fadeTo(d.changeFade, 1, S) 241 }; 242 b.event.trigger("fancybox-change"); 243 j.empty().removeAttr("filter").css({ 244 "border-width": d.padding, 245 width: i.width - d.padding * 2, 246 height: e.autoDimensions ? "auto" : i.height - y - d.padding * 2 247 }); 248 if (c) g(); else { 249 B.prop = 0; 250 b(B).animate({prop: 1}, {duration: d.changeSpeed, easing: d.easingChange, step: T, complete: g}) 251 } 252 }) 253 } else { 254 f.removeAttr("style"); 255 j.css("border-width", d.padding); 256 if (d.transitionIn == "elastic") { 257 r = V(); 258 j.html(m.contents()); 259 f.show(); 260 if (d.opacity) i.opacity = 0; 261 B.prop = 0; 262 b(B).animate({prop: 1}, {duration: d.speedIn, easing: d.easingIn, step: T, complete: S}) 263 } else { 264 d.titlePosition == "inside" && y > 0 && n.show(); 265 j.css({ 266 width: i.width - d.padding * 2, 267 height: e.autoDimensions ? "auto" : i.height - y - d.padding * 2 268 }).html(m.contents()); 269 f.css(i).fadeIn(d.transitionIn == "none" ? 0 : d.speedIn, S) 270 } 271 } 272 } 273 }, Y = function () { 274 if (d.enableEscapeButton || d.enableKeyboardNav) b(document).bind("keydown.fb", function (a) { 275 if (a.keyCode == 27 && d.enableEscapeButton) { 276 a.preventDefault(); 277 b.fancybox.close() 278 } else if ((a.keyCode == 279 37 || a.keyCode == 39) && d.enableKeyboardNav && a.target.tagName !== "INPUT" && a.target.tagName !== "TEXTAREA" && a.target.tagName !== "SELECT") { 280 a.preventDefault(); 281 b.fancybox[a.keyCode == 37 ? "prev" : "next"]() 282 } 283 }); 284 if (d.showNavArrows) { 285 if (d.cyclic && l.length > 1 || p !== 0) z.show(); 286 if (d.cyclic && l.length > 1 || p != l.length - 1) A.show() 287 } else { 288 z.hide(); 289 A.hide() 290 } 291 }, S = function () { 292 if (!b.support.opacity) { 293 j.get(0).style.removeAttribute("filter"); 294 f.get(0).style.removeAttribute("filter") 295 } 296 e.autoDimensions && j.css("height", "auto"); 297 f.css("height", "auto"); 298 s && s.length && n.show(); 299 d.showCloseButton && E.show(); 300 Y(); 301 d.hideOnContentClick && j.bind("click", b.fancybox.close); 302 d.hideOnOverlayClick && u.bind("click", b.fancybox.close); 303 b(window).bind("resize.fb", b.fancybox.resize); 304 d.centerOnScroll && b(window).bind("scroll.fb", b.fancybox.center); 305 if (d.type == "iframe") b('<iframe id="fancybox-frame" name="fancybox-frame' + (new Date).getTime() + '" frameborder="0" hspace="0" ' + (b.browser.msie ? 'allowtransparency="true""' : "") + ' scrolling="' + e.scrolling + '" src="' + d.href + '"></iframe>').appendTo(j); 306 f.show(); 307 h = false; 308 b.fancybox.center(); 309 d.onComplete(l, p, d); 310 var a, c; 311 if (l.length - 1 > p) { 312 a = l[p + 1].href; 313 if (typeof a !== "undefined" && a.match(J)) { 314 c = new Image; 315 c.src = a 316 } 317 } 318 if (p > 0) { 319 a = l[p - 1].href; 320 if (typeof a !== "undefined" && a.match(J)) { 321 c = new Image; 322 c.src = a 323 } 324 } 325 }, T = function (a) { 326 var c = { 327 width: parseInt(r.width + (i.width - r.width) * a, 10), 328 height: parseInt(r.height + (i.height - r.height) * a, 10), 329 top: parseInt(r.top + (i.top - r.top) * a, 10), 330 left: parseInt(r.left + (i.left - r.left) * a, 10) 331 }; 332 if (typeof i.opacity !== "undefined") c.opacity = a < 0.5 ? 0.5 : a; 333 f.css(c); 334 j.css({width: c.width - d.padding * 2, height: c.height - y * a - d.padding * 2}) 335 }, U = function () { 336 return [b(window).width() - d.margin * 2, b(window).height() - d.margin * 2, b(document).scrollLeft() + d.margin, b(document).scrollTop() + d.margin] 337 }, X = function () { 338 var a = U(), c = {}, g = d.autoScale, k = d.padding * 2; 339 c.width = d.width.toString().indexOf("%") > -1 ? parseInt(a[0] * parseFloat(d.width) / 100, 10) : d.width + k; 340 c.height = d.height.toString().indexOf("%") > -1 ? parseInt(a[1] * parseFloat(d.height) / 100, 10) : d.height + k; 341 if (g && (c.width > a[0] || c.height > a[1]))if (e.type == 342 "image" || e.type == "swf") { 343 g = d.width / d.height; 344 if (c.width > a[0]) { 345 c.width = a[0]; 346 c.height = parseInt((c.width - k) / g + k, 10) 347 } 348 if (c.height > a[1]) { 349 c.height = a[1]; 350 c.width = parseInt((c.height - k) * g + k, 10) 351 } 352 } else { 353 c.width = Math.min(c.width, a[0]); 354 c.height = Math.min(c.height, a[1]) 355 } 356 c.top = parseInt(Math.max(a[3] - 20, a[3] + (a[1] - c.height - 40) * 0.5), 10); 357 c.left = parseInt(Math.max(a[2] - 20, a[2] + (a[0] - c.width - 40) * 0.5), 10); 358 return c 359 }, V = function () { 360 var a = e.orig ? b(e.orig) : false, c = {}; 361 if (a && a.length) { 362 c = a.offset(); 363 c.top += parseInt(a.css("paddingTop"), 364 10) || 0; 365 c.left += parseInt(a.css("paddingLeft"), 10) || 0; 366 c.top += parseInt(a.css("border-top-width"), 10) || 0; 367 c.left += parseInt(a.css("border-left-width"), 10) || 0; 368 c.width = a.width(); 369 c.height = a.height(); 370 c = { 371 width: c.width + d.padding * 2, 372 height: c.height + d.padding * 2, 373 top: c.top - d.padding - 20, 374 left: c.left - d.padding - 20 375 } 376 } else { 377 a = U(); 378 c = { 379 width: d.padding * 2, 380 height: d.padding * 2, 381 top: parseInt(a[3] + a[1] * 0.5, 10), 382 left: parseInt(a[2] + a[0] * 0.5, 10) 383 } 384 } 385 return c 386 }, Z = function () { 387 if (t.is(":visible")) { 388 b("div", t).css("top", L * -40 + "px"); 389 L = (L + 1) % 12 390 } else clearInterval(K) 391 }; 392 b.fn.fancybox = function (a) { 393 if (!b(this).length)return this; 394 b(this).data("fancybox", b.extend({}, a, b.metadata ? b(this).metadata() : {})).unbind("click.fb").bind("click.fb", function (c) { 395 c.preventDefault(); 396 if (!h) { 397 h = true; 398 b(this).blur(); 399 o = []; 400 q = 0; 401 c = b(this).attr("rel") || ""; 402 if (!c || c == "" || c === "nofollow") o.push(this); else { 403 o = b("a[rel=" + c + "], area[rel=" + c + "]"); 404 q = o.index(this) 405 } 406 I() 407 } 408 }); 409 return this 410 }; 411 b.fancybox = function (a, c) { 412 var g; 413 if (!h) { 414 h = true; 415 g = typeof c !== "undefined" ? c : {}; 416 o = []; 417 q = parseInt(g.index, 10) || 0; 418 if (b.isArray(a)) { 419 for (var k = 420 0, C = a.length; k < C; k++)if (typeof a[k] == "object") b(a[k]).data("fancybox", b.extend({}, g, a[k])); else a[k] = b({}).data("fancybox", b.extend({content: a[k]}, g)); 421 o = jQuery.merge(o, a) 422 } else { 423 if (typeof a == "object") b(a).data("fancybox", b.extend({}, g, a)); else a = b({}).data("fancybox", b.extend({content: a}, g)); 424 o.push(a) 425 } 426 if (q > o.length || q < 0) q = 0; 427 I() 428 } 429 }; 430 b.fancybox.showActivity = function () { 431 clearInterval(K); 432 t.show(); 433 K = setInterval(Z, 66) 434 }; 435 b.fancybox.hideActivity = function () { 436 t.hide() 437 }; 438 b.fancybox.next = function () { 439 return b.fancybox.pos(p + 440 1) 441 }; 442 b.fancybox.prev = function () { 443 return b.fancybox.pos(p - 1) 444 }; 445 b.fancybox.pos = function (a) { 446 if (!h) { 447 a = parseInt(a); 448 o = l; 449 if (a > -1 && a < l.length) { 450 q = a; 451 I() 452 } else if (d.cyclic && l.length > 1) { 453 q = a >= l.length ? 0 : l.length - 1; 454 I() 455 } 456 } 457 }; 458 b.fancybox.cancel = function () { 459 if (!h) { 460 h = true; 461 b.event.trigger("fancybox-cancel"); 462 N(); 463 e.onCancel(o, q, e); 464 h = false 465 } 466 }; 467 b.fancybox.close = function () { 468 function a() { 469 u.fadeOut("fast"); 470 n.empty().hide(); 471 f.hide(); 472 b.event.trigger("fancybox-cleanup"); 473 j.empty(); 474 d.onClosed(l, p, d); 475 l = e = []; 476 p = q = 0; 477 d = e = {}; 478 h = false 479 } 480 481 if (!(h || f.is(":hidden"))) { 482 h = 483 true; 484 if (d && false === d.onCleanup(l, p, d)) h = false; else { 485 N(); 486 b(E.add(z).add(A)).hide(); 487 b(j.add(u)).unbind(); 488 b(window).unbind("resize.fb scroll.fb");
489 b(document).unbind("keydown.fb"); 490 j.find("iframe").attr("src", M && /^https/i.test(window.location.href || "") ? "javascript:void(false)" : "about:blank"); 491 d.titlePosition !== "inside" && n.empty(); 492 f.stop(); 493 if (d.transitionOut == "elastic") { 494 r = V(); 495 var c = f.position(); 496 i = {top: c.top, left: c.left, width: f.width(), height: f.height()}; 497 if (d.opacity) i.opacity = 1; 498 n.empty().hide(); 499 B.prop = 1; 500 b(B).animate({prop: 0}, {duration: d.speedOut, easing: d.easingOut, step: T, complete: a}) 501 } else f.fadeOut(d.transitionOut == "none" ? 0 : d.speedOut, a) 502 } 503 } 504 }; 505 b.fancybox.resize = function () { 506 u.is(":visible") && u.css("height", b(document).height()); 507 b.fancybox.center(true) 508 }; 509 b.fancybox.center = function (a) { 510 var c, g; 511 if (!h) { 512 g = a === true ? 1 : 0; 513 c = U(); 514 !g && (f.width() > c[0] || f.height() > c[1]) || f.stop().animate({ 515 top: parseInt(Math.max(c[3] - 20, c[3] + (c[1] - j.height() - 40) * 0.5 - d.padding)), 516 left: parseInt(Math.max(c[2] - 20, c[2] + (c[0] - j.width() - 40) * 0.5 - 517 d.padding)) 518 }, typeof a == "number" ? a : 200) 519 } 520 }; 521 b.fancybox.init = function () { 522 if (!b("#fancybox-wrap").length) { 523 b("body").append(m = b('<div id="fancybox-tmp"></div>'), t = b('<div id="fancybox-loading"><div></div></div>'), u = b('<div id="fancybox-overlay"></div>'), f = b('<div id="fancybox-wrap"></div>')); 524 D = b('<div id="fancybox-outer"></div>').append('<div class="fancybox-bg" id="fancybox-bg-n"></div><div class="fancybox-bg" id="fancybox-bg-ne"></div><div class="fancybox-bg" id="fancybox-bg-e"></div><div class="fancybox-bg" id="fancybox-bg-se"></div><div class="fancybox-bg" id="fancybox-bg-s"></div><div class="fancybox-bg" id="fancybox-bg-sw"></div><div class="fancybox-bg" id="fancybox-bg-w"></div><div class="fancybox-bg" id="fancybox-bg-nw"></div>').appendTo(f); 525 D.append(j = b('<div id="fancybox-content"></div>'), E = b('<a id="fancybox-close"></a>'), n = b('<div id="fancybox-title"></div>'), z = b('<a href="javascript:;" id="fancybox-left"><span class="fancy-ico" id="fancybox-left-ico"></span></a>'), A = b('<a href="javascript:;" id="fancybox-right"><span class="fancy-ico" id="fancybox-right-ico"></span></a>')); 526 E.click(b.fancybox.close); 527 t.click(b.fancybox.cancel); 528 z.click(function (a) { 529 a.preventDefault(); 530 b.fancybox.prev() 531 }); 532 A.click(function (a) { 533 a.preventDefault(); 534 b.fancybox.next() 535 }); 536 b.fn.mousewheel && f.bind("mousewheel.fb", function (a, c) { 537 if (h) a.preventDefault(); else if (b(a.target).get(0).clientHeight == 0 || b(a.target).get(0).scrollHeight === b(a.target).get(0).clientHeight) { 538 a.preventDefault(); 539 b.fancybox[c > 0 ? "prev" : "next"]() 540 } 541 }); 542 b.support.opacity || f.addClass("fancybox-ie"); 543 if (M) { 544 t.addClass("fancybox-ie6"); 545 f.addClass("fancybox-ie6"); 546 b('<iframe id="fancybox-hide-sel-frame" src="' + (/^https/i.test(window.location.href || "") ? "javascript:void(false)" : "about:blank") + '" scrolling="no" border="0" frameborder="0" tabindex="-1"></iframe>').prependTo(D) 547 } 548 } 549 }; 550 b.fn.fancybox.defaults = { 551 padding: 10, 552 margin: 40, 553 opacity: false, 554 modal: false, 555 cyclic: false, 556 scrolling: "auto", 557 width: 560, 558 height: 340, 559 autoScale: true, 560 autoDimensions: true, 561 centerOnScroll: false, 562 ajax: {}, 563 swf: {wmode: "transparent"}, 564 hideOnOverlayClick: true, 565 hideOnContentClick: false, 566 overlayShow: true, 567 overlayOpacity: 0.7, 568 overlayColor: "#777", 569 titleShow: true, 570 titlePosition: "float", 571 titleFormat: null, 572 titleFromAlt: false, 573 transitionIn: "fade", 574 transitionOut: "fade", 575 speedIn: 300, 576 speedOut: 300, 577 changeSpeed: 300, 578 changeFade: "fast", 579 easingIn: "swing", 580 easingOut: "swing", 581 showCloseButton: true, 582 showNavArrows: true, 583 enableEscapeButton: true, 584 enableKeyboardNav: true, 585 onStart: function () { 586 }, 587 onCancel: function () { 588 }, 589 onComplete: function () { 590 }, 591 onCleanup: function () { 592 }, 593 onClosed: function () { 594 }, 595 onError: function () { 596 } 597 }; 598 b(document).ready(function () { 599 // b.fancybox.init() 600 }) 601})(jQuery);
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.