1/** 2 * @Website: apollotheme.com - prestashop template provider 3 * @author Apollotheme <[email protected]> 4 * @copyright 2007-2018 Apollotheme 5 * @description: 6 */ 7 8(function(a) { 9 a.fn.LiteTooltip = function(d, c) { 10 return this.each(function() { 11 var f = a.extend({}, a.fn.LiteTooltip.defaultSettings, d || {}); 12 var e = a(this); 13 var g = new b(f, e); 14 if (g.settings.title != "") { 15 if (!e.is("input")) { 16 e.css({cursor: "pointer"}) 17 } 18 var debug = (g.settings.debug != null ) ? ((g.settings.debug == "true" || g.settings.debug == true) ? true : false) : false; 19 20 if (g.settings.trigger == "hoverable") { 21 this.toggle = false; 22 e.bind("mouseenter", {settings: g.settings, element: e, $plugin: g, $toggle: this.toggle}, g.mouseOverHandler); 23 if(!debug){ 24 e.bind("mouseleave", {settings: g.settings, element: e, $plugin: g, $toggle: this.toggle}, g.mouseOutHandler) 25 } 26 } else { 27 if (g.settings.trigger == "hover") { 28 e.bind("mouseenter", {settings: g.settings, element: e, $plugin: g}, g.mouseOverHandler); 29 if(!debug){ 30 e.bind("mouseleave", {settings: g.settings, element: e, $plugin: g}, g.mouseOutHandler) 31 } 32 } else { 33 if (g.settings.trigger == "focus") { 34 e.bind("focus", {settings: g.settings, element: e, $plugin: g}, g.mouseOverHandler); 35 e.bind("blur", {settings: g.settings, element: e, $plugin: g}, g.mouseOutHandler) 36 } else { 37 if (g.settings.trigger == "click") { 38 this.toggle = false; 39 e.bind("click", {settings: g.settings, element: e, $plugin: g, $toggle: this.toggle}, g.mouseOverHandler); 40 if (!g.settings.issticky) { 41 if(!debug){ 42 e.bind("mouseleave", {settings: g.settings, element: e, $plugin: g, $toggle: this.toggle}, g.mouseOutHandler) 43 } 44 } 45 } 46 } 47 } 48 } 49 } 50 }) 51 }; 52 function b(d, c) { 53 this.settings = this.getSettings(d, c); 54 this.$element = c; 55 return this 56 } 57 b.prototype = { 58 getSettings: function(f, d) { 59 var e = (d.data("issticky") != null) ? ((d.data("issticky") == "true") ? true : false) : true; 60 var c = a.extend({}, f, { 61 location: d.data("location"), 62 title: d.data("title"), 63 backcolor: d.data("backcolor"), 64 textalign: d.data("textalign"), 65 trigger: d.data("trigger"), 66 textcolor: d.data("textcolor"), 67 opacity: d.data("opacity"), 68 templatename: d.data("templatename"), 69 width: d.data("width"), 70 margin: d.data("margin"), 71 padding: d.data("padding"), 72 delay: d.data("delay"), 73 issticky: e, 74 container: d.data("container"), 75 shadow: d.data("shadow") 76 }); 77 return c 78 }, mouseOverHandler: function(n) { 79 if (typeof n.data.settings.onUpdate == "function") { 80 n.data.settings.title = n.data.settings.onUpdate.call(this) 81 } 82 if (n.data.element.is("input")) { 83 if (n.data.element.val() != "") { 84 return false 85 } 86 } 87 if (n.data.settings.trigger == "click") { 88 if (!n.data.$toggle) { 89 n.data.$toggle = true; 90 this.toggle = true; 91 n.data.element.unbind("click"); 92 n.data.element.bind("click", { 93 settings: n.data.settings, 94 element: n.data.element, 95 $plugin: n.data.$plugin, 96 $toggle: n.data.$toggle 97 }, 98 n.data.$plugin.mouseOutHandler) 99 } else { 100 n.data.$toggle = false;
101 this.toggle = false; 102 return false 103 } 104 } 105 var c = n.data.element; 106 var d = n.data.settings; 107 var R = parseInt(d.margin.toString().replace("px", "")); 108 var T = parseInt(d.padding.toString().replace("px", "")); 109 var Y = parseInt(d.width.toString().replace("px", "")); 110 var Q = d.container == "body" ? d.location : "none"; 111 var N = d.backcolor; 112 var X = d.textcolor; 113 var W = d.textalign; 114 var V = d.templatename; 115 var P = d.delay; 116 var K = a(d.template); 117 K.css({opacity: d.opacity}); 118 K.css("visibility", "visible"); 119 K.find(".tooltip-content").css({"text-align": W}).html(d.title + d.clearfix); 120 K.find(".tooltip-content").css({padding: T + "px"}); 121 122 K.find(".tooltip-content p").css({background: N}); 123 K.find(".tooltip-content p").css({color: X}); 124// K.find(".tooltip-content").css({background: N}); 125// K.find(".tooltip-content").css({color: X}); 126 if (d.shadow == 1) { 127 K.find(".tooltip-content").css({"box-shadow": "1px 1px 3px 0px #888888"}) 128 } 129 var M = Q; 130 var L = Q.split("-")[0]; 131 var E = M; 132 var D = L; 133 K.removeClass(Q).addClass(M); 134 K.find(".tooltip-arrow").removeClass(Q).addClass(M).css("border-" + L + "-color", N); 135 var l = d.container; 136 if (d.container != "body") { 137 K.addClass("incontainer"); 138 l = "#" + d.container; 139 a(l).children().each(function() { 140 a(this).remove() 141 }) 142 } else { 143 K.removeClass("incontainer"); 144 l = "body" 145 } 146 a(l).append(K); 147 if (n.data.settings.trigger == "click") { 148 var O = a('<div id="tooltip-clickoutside"></div>'); 149 O.css({ 150 width: "100%", 151 height: "100%", 152 position: "absolute", 153 top: a(document).scrollTop() + "px", 154 left: "0px" 155 }); 156 a("body").append(O); 157 O.bind("click", {settings: n.data.settings, element: n.data.element, $plugin: n.data.$plugin, $toggle: n.data.$toggle}, n.data.$plugin.mouseOutHandler); 158 n.data.$toggle = false; 159 this.toggle = false 160 } else { 161 if (n.data.settings.trigger == "hoverable") { 162 n.data.element.unbind("mouseenter") 163 } 164 } 165 if (d.container == "body") { 166 K.offset({top: 0, left: 0}); 167 var ab = K.outerWidth(); 168 var Z = K.outerHeight(); 169 var ae = a(document).width(); 170 var G = scrollbarWidth(); 171 var ac = a(document).width() - a(window).width(); 172 if (ac > 0) { 173 ae = ae - G 174 } 175 if (ae > a(window).width()) { 176 ae = a(window).width() - G 177 } 178 var ad = a(document).height(); 179 if (ac > G) { 180 ad = ad - G 181 } 182 if (Y != 0) { 183 if (Y * 2 > ae) { 184 Y = Math.floor((ae / 2) - 30) 185 } else { 186 Y -= 30 187 } 188 if (Y * 1.5 > ae / 2) { 189 Y = Math.floor((ae / 2) - 30) 190 } 191 } else { 192 if (340 * 2 > ae) { 193 Y = Math.floor((ae / 2) - 30) 194 } else { 195 Y = 340 196 } 197 } 198 K.css({"max-width": Y}); 199 ab = K.outerWidth(); 200 Z = K.outerHeight(); 201 var J = c.context; 202 var r = J.offsetWidth; 203 var o = J.offsetHeight; 204 var q = c.offset().top; 205 var p = c.offset().left; 206 if (J.tagName.toLowerCase() == "area") { 207 var g = J.parentElement.getAttribute("name"); 208 var h = J.getAttribute("shape").toLowerCase(); 209 var x = a("img[usemap='#" + g + "']").offset().top; 210 var w = a("img[usemap='#" + g + "']").offset().left; 211 var j = parseInt(J.getAttribute("coords").split(",")[0]); 212 var k = parseInt(J.getAttribute("coords").split(",")[1]); 213 var i = parseInt(J.getAttribute("coords").split(",")[2]); 214 var f = parseInt(J.getAttribute("coords").split(",")[3] || i); 215 var v = {top: parseInt(x + k), left: parseInt(w + j)}; 216 if (h == "circle") { 217 v = {top: parseInt(x + k - i), left: parseInt(w + j - i)}; 218 i *= 2; 219 f *= 2 220 } 221 if (h == "rect") { 222 v = {top: parseInt(x + k), left: parseInt(w + j)};
223 i = i - j; 224 f = f - k 225 } 226 if (h == "poly") { 227 var m = new Array(); 228 var H = J.getAttribute("coords").split(","); 229 for (var y = 0; y < H.length; ) { 230 m.push({x: parseInt(H[y]), y: parseInt(H[y + 1])}); 231 y = y + 2 232 } 233 m.sort(function(e, af) { 234 var ag = e.x, ah = af.x; 235 if (ag == ah) { 236 return 0 237 } 238 return ag < ah ? 1 : -1 239 }); 240 var z = m[0].x; 241 m.sort(function(e, af) { 242 var ag = e.y, ah = af.y; 243 if (ag == ah) { 244 return 0 245 } 246 return ag < ah ? 1 : -1 247 }); 248 var A = m[0].y; 249 m.sort(function(e, af) { 250 var ag = e.x, ah = af.x; 251 if (ag == ah) { 252 return 0 253 } 254 return ag > ah ? 1 : -1 255 }); 256 var B = m[0].x; 257 m.sort(function(e, af) { 258 var ag = e.y, ah = af.y; 259 if (ag == ah) { 260 return 0 261 } 262 return ag > ah ? 1 : -1 263 }); 264 var C = m[0].y; 265 v = {top: parseInt(x + C), left: parseInt(w + B)}; 266 i = z - B; 267 f = A - C 268 } 269 p = v.left; 270 q = v.top; 271 r = i; 272 o = f 273 } 274 p = Math.round(p); 275 q = Math.round(q); 276 r = Math.round(r); 277 o = Math.round(o); 278 K.offset({top: 0, left: 0}); 279 var S; 280 switch (Q) { 281 case "top": 282 S = {top: (q - Z - R), left: p - (ab / 2) + (r / 2)}; 283 break; 284 case "top-left": 285 S = {top: (q - Z - R), left: p}; 286 break; 287 case "top-right": 288 S = {top: (q - Z - R), left: p - ab + r}; 289 break; 290 case "right": 291 S = {top: (q + (o / 2) - (Z / 2)), left: p + r + R}; 292 break; 293 case "right-top": 294 S = {top: (q + o - Z + 8), left: p + r + R}; 295 break; 296 case "right-bottom": 297 S = {top: q - 8, left: p + r + R}; 298 break; 299 case "bottom": 300 S = {top: (q + o + R), left: p - (ab / 2) + (r / 2)}; 301 break; 302 case "bottom-left": 303 S = {top: (q + o + R), left: p}; 304 break; 305 case "bottom-right": 306 S = {top: (q + o + R), left: p - ab + r}; 307 break; 308 case "left": 309 S = {top: (q + (o / 2) - (Z / 2)), left: p - ab - R}; 310 break; 311 case "left-top": 312 S = {top: (q + o - Z + 8), left: p - ab - R}; 313 break; 314 case "left-bottom": 315 S = {top: q - 8, left: p - ab - R}; 316 break 317 } 318 var F = {top: 0, left: 0}; 319 F.left = S.left; 320 F.top = S.top; 321 var aa = (((M.match("bottom") != null) || (M == "left") || (M == "right")) ? (((M == "left") || (M == "right")) ? (Z / 2) : (Z)) > (ad - q - o) : false); 322 if ((S.left < 0) || (S.top < 0) || (S.left + ab > ae) || aa) { 323 if (L == "top" || L == "bottom" || L == "left" || L == "right") { 324 var u = false;
325 switch (L) { 326 case "top": 327 S.top = q - Z - R; 328 S.left = p - (ab / 2) + (r / 2); 329 u = true; 330 break; 331 case "bottom": 332 S.top = q - Z - R; 333 S.left = p - (ab / 2) + (r / 2); 334 u = true; 335 break; 336 case "left": 337 var I = M.replace(L + "-", ""); 338 if (I == "top") { 339 L = "top"; 340 M = "top-left"; 341 K.removeClass(E).addClass(M); 342 K.find(".tooltip-arrow").removeClass(E).css("border-" + D + "-color", "").addClass(M).css("border-" + L + "-color", N); 343 D = "top"; 344 E = "top-left"; 345 K.removeClass(Q).addClass(M); 346 K.find(".tooltip-arrow").removeClass(Q).addClass(M).css("border-" + L + "-color", N); 347 ab = K.outerWidth(); 348 Z = K.outerHeight(); 349 S.top = q - Z - R; 350 S.left = p - (ab / 2) + (r / 2); 351 F.left = p; 352 F.top = q - Z - R; 353 aa = (((M.match("bottom") != null) || (M == "left") || (M == "right")) ? (((M == "left") || (M == "right")) ? (Z / 2) : (Z)) > (ad - q - o) : false); 354 if ((S.left < 0) || (S.top < 0) || (S.left + ab > ae) || aa) { 355 u = true 356 } else { 357 S.left = F.left; 358 S.top = F.top 359 } 360 } else { 361 if (I == "bottom") { 362 L = "bottom"; 363 M = "bottom-left"; 364 K.removeClass(E).addClass(M); 365 K.find(".tooltip-arrow").removeClass(E).css("border-" + D + "-color", "").addClass(M).css("border-" + L + "-color", N); 366 D = "bottom"; 367 E = "bottom-left"; 368 K.removeClass(Q).addClass(M); 369 K.find(".tooltip-arrow").removeClass(Q).addClass(M).css("border-" + L + "-color", N); 370 ab = K.outerWidth(); 371 Z = K.outerHeight(); 372 S.top = q + o + R; 373 S.left = p - (ab / 2) + (r / 2); 374 F.left = p; 375 F.top = q + o + R; 376 aa = (((M.match("bottom") != null) || (M == "left") || (M == "right")) ? (((M == "left") || (M == "right")) ? (Z / 2) : (Z)) > (ad - q - o) : false); 377 if ((S.left < 0) || (S.top < 0) || (S.left + ab > ae) || aa) { 378 u = true 379 } else { 380 S.left = F.left; 381 S.top = F.top 382 } 383 } else { 384 L = "top"; 385 M = "top"; 386 K.removeClass(E).addClass(M); 387 K.find(".tooltip-arrow").removeClass(E).css("border-" + D + "-color", "").addClass(M).css("border-" + L + "-color", N); 388 D = "top"; 389 E = "top"; 390 K.removeClass(Q).addClass(M); 391 K.find(".tooltip-arrow").removeClass(Q).addClass(M).css("border-" + L + "-color", N); 392 ab = K.outerWidth(); 393 Z = K.outerHeight(); 394 S.top = q - Z - R; 395 S.left = p - (ab / 2) + (r / 2); 396 F.left = S.left; 397 F.top = S.top; 398 aa = (((M.match("bottom") != null) || (M == "left") || (M == "right")) ? (((M == "left") || (M == "right")) ? (Z / 2) : (Z)) > (ad - q - o) : false); 399 if ((S.left < 0) || (S.top < 0) || (S.left + ab > ae) || aa) { 400 u = true 401 } else { 402 S.left = F.left; 403 S.top = F.top 404 } 405 } 406 } 407 break; 408 case "right": 409 var I = M.replace(L + "-", ""); 410 if (I == "top") { 411 L = "top"; 412 M = "top-left"; 413 K.removeClass(E).addClass(M); 414 K.find(".tooltip-arrow").removeClass(E).css("border-" + D + "-color", "").addClass(M).css("border-" + L + "-color", N); 415 D = "top"; 416 E = "top-left"; 417 K.removeClass(Q).addClass(M); 418 K.find(".tooltip-arrow").removeClass(Q).addClass(M).css("border-" + L + "-color", N); 419 ab = K.outerWidth(); 420 Z = K.outerHeight(); 421 S.top = q - Z - R; 422 S.left = p - (ab / 2) + (r / 2); 423 F.left = p; 424 F.top = q - Z - R; 425 aa = (((M.match("bottom") != null) || (M == "left") || (M == "right")) ? (((M == "left") || (M == "right")) ? (Z / 2) : (Z)) > (ad - q - o) : false); 426 if ((S.left < 0) || (S.top < 0) || (S.left + ab > ae) || aa) { 427 u = true 428 } else { 429 S.left = F.left; 430 S.top = F.top 431 } 432 } else { 433 if (I == "bottom") { 434 L = "bottom"; 435 M = "bottom-left"; 436 K.removeClass(E).addClass(M); 437 K.find(".tooltip-arrow").removeClass(E).css("border-" + D + "-color", "").addClass(M).css("border-" + L + "-color", N); 438 D = "bottom"; 439 E = "bottom-left"; 440 K.removeClass(Q).addClass(M); 441 K.find(".tooltip-arrow").removeClass(Q).addClass(M).css("border-" + L + "-color", N); 442 ab = K.outerWidth(); 443 Z = K.outerHeight(); 444 S.top = q - Z - R; 445 S.left = p - (ab / 2) + (r / 2); 446 F.left = p; 447 F.top = q + o + R; 448 aa = (((M.match("bottom") != null) || (M == "left") || (M == "right")) ? (((M == "left") || (M == "right")) ? (Z / 2) : (Z)) > (ad - q - o) : false); 449 if ((S.left < 0) || (S.top < 0) || (S.left + ab > ae) || aa) { 450 u = true 451 } else { 452 S.left = F.left; 453 S.top = F.top 454 } 455 } else { 456 L = "top"; 457 M = "top"; 458 K.removeClass(E).addClass(M); 459 K.find(".tooltip-arrow").removeClass(E).css("border-" + D + "-color", "").addClass(M).css("border-" + L + "-color", N); 460 D = "top"; 461 E = "top"; 462 K.removeClass(Q).addClass(M); 463 K.find(".tooltip-arrow").removeClass(Q).addClass(M).css("border-" + L + "-color", N); 464 ab = K.outerWidth(); 465 Z = K.outerHeight(); 466 S.top = q - Z - R; 467 S.left = p - (ab / 2) + (r / 2); 468 F.left = S.left; 469 F.top = S.top; 470 aa = (((M.match("bottom") != null) || (M == "left") || (M == "right")) ? (((M == "left") || (M == "right")) ? (Z / 2) : (Z)) > (ad - q - o) : false); 471 if ((S.left < 0) || (S.top < 0) || (S.left + ab > ae) || aa) { 472 u = true 473 } else { 474 S.left = F.left; 475 S.top = F.top 476 } 477 } 478 } 479 break 480 } 481 if (u) { 482 var s = false;
483 var t = false; 484 if (S.top < 0) { 485 L = "bottom"; 486 M = "bottom"; 487 S.top = q + o + R; 488 t = true; 489 if (S.left < 0) { 490 L = "bottom"; 491 M = "bottom-left"; 492 S.left = p; 493 s = true 494 } 495 if (S.left + ab > ae) { 496 S.left = p - ab + r; 497 if (S.left < 0) { 498 L = "bottom"; 499 M = "bottom"; 500 S.left = p - (ab / 2) + (r / 2); 501 s = true 502 } else { 503 L = "bottom"; 504 M = "bottom-right"; 505 S.left = p - ab + r; 506 s = true 507 } 508 } 509 } else { 510 L = "top"; 511 M = "top"; 512 S.top = q - Z - R; 513 t = false; 514 if (S.left < 0) { 515 L = "top"; 516 M = "top-left"; 517 S.left = p; 518 s = true 519 } 520 if (S.left + ab > ae) { 521 S.left = p - ab + r; 522 if (S.left < 0) { 523 L = "top"; 524 M = "top"; 525 S.left = p - (ab / 2) + (r / 2); 526 s = true 527 } else { 528 L = "top"; 529 M = "top-right"; 530 S.left = p - ab + r; 531 s = true 532 } 533 } 534 } 535 if (!s) { 536 if (t) { 537 M = E.replace("top", "bottom"); 538 L = D.replace("top", "bottom"); 539 if (F.left < 0) { 540 if (L == "bottom" || L == "top") { 541 M = M.replace("right", "left"); 542 S.left = p 543 } 544 } else { 545 S.left = F.left 546 } 547 } else { 548 M = E.replace("bottom", "top"); 549 L = D.replace("bottom", "top"); 550 if (F.left < 0) { 551 if (L == "bottom" || L == "top") { 552 M = M.replace("right", "left"); 553 S.left = p 554 } 555 } else { 556 S.left = F.left 557 } 558 } 559 } 560 } 561 } 562 } 563 K.removeClass(E).addClass(M); 564 K.find(".tooltip-arrow").removeClass(E).css("border-" + D + "-color", "").addClass(M).css("border-" + L + "-color", N); 565 if (V != "") { 566 if (K.find(".tooltip-content > .template").hasClass("template")) { 567 K.find(".tooltip-content > .template").addClass(V); 568 var U = K.find("." + V).css("background-color"); 569// K.find(".tooltip-arrow").css("border-" + D + "-color", ""); 570// K.find(".tooltip-arrow").css("border-" + L + "-color", U); 571 //K.find(".tooltip-content").css({background: U}) // Fix background-color 572 } else { 573 if (K.find(".tooltip-content > .tooltip-menu").hasClass("tooltip-menu")) { 574 K.find(".tooltip-content > .tooltip-menu").addClass(V); 575 var U = K.find("." + V).css("background-color"); 576 K.find(".tooltip-arrow").css("border-" + D + "-color", ""); 577 K.find(".tooltip-arrow").css("border-" + L + "-color", U); 578 K.find(".tooltip-content").css({background: U}) 579 } 580 } 581 } 582 K.find(".tooltip-content > .video-wrapper").css({width: (K.width() - (T * 2)) + "px"}); 583 K.offset(S) 584 } 585 K.hide(); 586 c.removeAttr("title"); 587 c.removeAttr("alt"); 588 if (n.data.settings.trigger == "hoverable" || n.data.settings.trigger == "click") { 589 P = 0 590 } 591 switch (L) { 592 case "top": 593 K.delay(P).css({top: "-=20", opacity: 0, display: "block"}).stop(true, true).animate({top: "+=20", opacity: d.opacity}, 150); 594 break; 595 case "bottom": 596 K.delay(P).css({top: "+=20", opacity: 0, display: "block"}).stop(true, true).animate({top: "-=20", opacity: d.opacity}, 150); 597 break;
598 case "left": 599 K.delay(P).css({left: "-=20", opacity: 0, display: "block"}).stop(true, true).animate({left: "+=20", opacity: d.opacity}, 150); 600 break; 601 case "right": 602 K.delay(P).css({left: "+=20", opacity: 0, display: "block"}).stop(true, true).animate({left: "-=20", opacity: d.opacity}, 150); 603 break; 604 default: 605 K.delay(P).css({opacity: 0, display: "block"}).stop(true, true).animate({opacity: d.opacity}, 150); 606 break 607 } 608 n.data.$plugin.tooltip = K; 609 n.data.$plugin.location = Q; 610 n.data.$plugin.tooltip_arrow_border = L; 611 K = null; 612 return false 613 }, mouseOutHandler: function(d) { 614 var f = d.data.$plugin.tooltip; 615 var g = d.data.$plugin.location; 616 var c = false; 617 if (d.data.settings.trigger != "hoverable") { 618 if (d.data.settings.trigger == "hover") { 619 a(f).delay(d.data.settings.delay); 620 c = true 621 } else { 622 c = true; 623 if (d.data.settings.trigger == "click") { 624 if (!d.data.settings.issticky) { 625 d.data.settings.interval = setInterval(function() { 626 a(f).fadeOut(0, function() { 627 a(d.data.$plugin.tooltip).remove() 628 }); 629 clearInterval(d.data.settings.interval); 630 this.toggle = false; 631 d.data.$toggle = false; 632 d.data.element.unbind("click"); 633 d.data.element.unbind("mouseleave"); 634 d.data.element.bind("click", {settings: d.data.settings, element: d.data.element, $plugin: d.data.$plugin, $toggle: false}, d.data.$plugin.mouseOverHandler); 635 d.data.element.bind("mouseleave", {settings: d.data.settings, element: d.data.element, $plugin: d.data.$plugin, $toggle: false}, d.data.$plugin.mouseOutHandler) 636 }, d.data.settings.delay == 0 ? 2000 : d.data.settings.delay); 637 d.data.element.unbind("mouseleave"); 638 a(f).find(".tooltip-content").bind("mouseenter", {settings: d.data.settings, element: d.data.element, $plugin: d.data.$plugin, $toggle: true}, function() { 639 d.data.element.unbind("click"); 640 d.data.element.unbind("mouseleave"); 641 this.toggle = true; 642 d.data.$toggle = true; 643 clearInterval(d.data.settings.interval) 644 }); 645 a(f).find(".tooltip-content").bind("mouseleave", {settings: d.data.settings, element: d.data.element, $plugin: d.data.$plugin, $toggle: d.data.$toggle}, function() { 646 a(f).fadeOut(0, function() { 647 a(d.data.$plugin.tooltip).remove() 648 }); 649 this.toggle = false; 650 d.data.$toggle = false; 651 d.data.element.unbind("click"); 652 d.data.element.unbind("mouseleave"); 653 d.data.element.bind("click", {settings: d.data.settings, element: d.data.element, $plugin: d.data.$plugin, $toggle: false}, d.data.$plugin.mouseOverHandler); 654 d.data.element.bind("mouseleave", {settings: d.data.settings, element: d.data.element, $plugin: d.data.$plugin, $toggle: false}, d.data.$plugin.mouseOutHandler) 655 }); 656 c = false 657 } else { 658 c = true 659 } 660 } 661 } 662 } else { 663 d.data.settings.interval = setInterval(function() { 664 a(f).fadeOut(0, function() { 665 a(d.data.$plugin.tooltip).remove() 666 }); 667 clearInterval(d.data.settings.interval); 668 d.data.element.unbind("mouseleave"); 669 d.data.element.unbind("mouseenter"); 670 d.data.element.bind("mouseenter", {settings: d.data.settings, element: d.data.element, $plugin: d.data.$plugin, $toggle: false}, d.data.$plugin.mouseOverHandler); 671 d.data.element.bind("mouseleave", {settings: d.data.settings, element: d.data.element, $plugin: d.data.$plugin, $toggle: false}, d.data.$plugin.mouseOutHandler) 672 }
672, d.data.settings.delay == 0 ? 2000 : d.data.settings.delay); 673 d.data.element.unbind("mouseleave"); 674 a(f).find(".tooltip-content").bind("mouseenter", {settings: d.data.settings, element: d.data.element, $plugin: d.data.$plugin, $toggle: true}, function() { 675 d.data.element.unbind("mouseenter"); 676 d.data.element.unbind("mouseleave"); 677 this.toggle = true; 678 d.data.$toggle = true; 679 clearInterval(d.data.settings.interval) 680 }); 681 a(f).find(".tooltip-content").bind("mouseleave", {settings: d.data.settings, element: d.data.element, $plugin: d.data.$plugin, $toggle: true}, function() { 682 a(f).fadeOut(0, function() { 683 a(d.data.$plugin.tooltip).remove() 684 }); 685 this.toggle = false; 686 d.data.$toggle = false; 687 d.data.element.unbind("mouseleave"); 688 d.data.element.unbind("mouseenter"); 689 d.data.element.bind("mouseenter", {settings: d.data.settings, element: d.data.element, $plugin: d.data.$plugin, $toggle: false}, d.data.$plugin.mouseOverHandler); 690 d.data.element.bind("mouseleave", {settings: d.data.settings, element: d.data.element, $plugin: d.data.$plugin, $toggle: false}, d.data.$plugin.mouseOutHandler) 691 }); 692 c = false 693 } 694 if (c) { 695 switch (d.data.$plugin.tooltip_arrow_border) { 696 case "top": 697 a(f).stop(true, true).animate({top: "-=20", opacity: 0}, 150, function() { 698 a(d.data.$plugin.tooltip).remove() 699 }); 700 break; 701 case "bottom": 702 a(f).stop(true, true).animate({top: "+=20", opacity: 0}, 150, function() { 703 a(d.data.$plugin.tooltip).remove() 704 }); 705 break; 706 case "left": 707 a(f).stop(true, true).animate({left: "-=20", opacity: 0}, 150, function() { 708 a(d.data.$plugin.tooltip).remove() 709 }); 710 break; 711 case "right": 712 a(f).stop(true, true).animate({left: "+=20", opacity: 0}, 150, function() { 713 a(d.data.$plugin.tooltip).remove() 714 }); 715 break 716 } 717 a(d.data.$plugin.tooltip).remove() 718 } 719 if (d.data.settings.trigger == "click") { 720 if (d.data.$toggle) { 721 a("body").find("#tooltip-clickoutside").remove(); 722 this.toggle = false; 723 d.data.$toggle = false; 724 d.data.element.unbind("click"); 725 d.data.element.unbind("mouseleave"); 726 d.data.element.bind("click", {settings: d.data.settings, element: d.data.element, $plugin: d.data.$plugin, $toggle: d.data.$toggle}, d.data.$plugin.mouseOverHandler); 727 if (!d.data.settings.issticky) { 728 d.data.element.bind("mouseleave", {settings: d.data.settings, element: d.data.element, $plugin: d.data.$plugin, $toggle: d.data.$toggle}, d.data.$plugin.mouseOutHandler) 729 } 730 } 731 } 732 return false 733 }}; 734 scrollbarWidth = function() { 735 var c = a('<div style="width:50px;height:50px;overflow:hidden;position:absolute;top:-200px;left:-200px;"><div style="height:100px;"></div>'); 736 a("body").append(c); 737 var d = a("div", c).innerWidth(); 738 c.css("overflow", "scroll"); 739 var e = a("div", c).innerWidth(); 740 a(c).remove(); 741 return (d - e) 742 }; 743 a.fn.LiteTooltip.defaultSettings = { 744 location: "top", 745 title: "", 746 opacity: 0.89, 747 backcolor: "#000000", 748 textcolor: "#ffffff", 749 template: '<div class="litetooltip-wrapper"><div class="tooltip-arrow"></div><div class="tooltip-content"></div></div>', 750 margin: 5, 751 padding: 10, 752 width: 0, 753 textalign: "center", 754 trigger: "hover", 755 templatename: "", 756 delay: 0, 757 issticky: true, 758 clearfix: '<div class="clear"></div>', 759 container: "body", 760 shadow: 1 761 } 762})(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.