59 lines
1.9 KiB
Diff
59 lines
1.9 KiB
Diff
--- jquery.tipTip_old.js 2011-12-01 14:15:35.000000000 +0100
|
|
+++ jquery.tipTip.js 2011-12-07 12:32:32.000000000 +0100
|
|
@@ -20,6 +20,9 @@
|
|
*/
|
|
|
|
(function($){
|
|
+ $.tipTipClear = function() {
|
|
+ $("#tiptip_holder").remove();
|
|
+ }
|
|
$.fn.tipTip = function(options) {
|
|
var defaults = {
|
|
activation: "hover",
|
|
@@ -31,7 +34,7 @@
|
|
fadeIn: 200,
|
|
fadeOut: 200,
|
|
attribute: "title",
|
|
- content: false, // HTML or String to fill TipTIp with
|
|
+ content: false, // HTML String or function to fill TipTIp with
|
|
enter: function(){},
|
|
exit: function(){}
|
|
};
|
|
@@ -51,12 +54,7 @@
|
|
|
|
return this.each(function(){
|
|
var org_elem = $(this);
|
|
- if(opts.content){
|
|
- var org_title = opts.content;
|
|
- } else {
|
|
- var org_title = org_elem.attr(opts.attribute);
|
|
- }
|
|
- if(org_title != ""){
|
|
+ if(opts.content || org_elem.attr(opts.attribute)){
|
|
if(!opts.content){
|
|
org_elem.removeAttr(opts.attribute); //remove original Attribute
|
|
}
|
|
@@ -99,6 +97,8 @@
|
|
|
|
function active_tiptip(){
|
|
opts.enter.call(this);
|
|
+ var org_title = typeof opts.content === 'function' ? opts.content.call(org_elem, opts) : opts.content;
|
|
+ org_title = org_title || org_elem.attr(opts.attribute);
|
|
tiptip_content.html(org_title);
|
|
tiptip_holder.hide().removeAttr("class").css("margin","0");
|
|
tiptip_arrow.removeAttr("style");
|
|
@@ -177,7 +177,12 @@
|
|
tiptip_holder.css({"margin-left": marg_left+"px", "margin-top": marg_top+"px"}).attr("class","tip"+t_class);
|
|
|
|
if (timeout){ clearTimeout(timeout); }
|
|
- timeout = setTimeout(function(){ tiptip_holder.stop(true,true).fadeIn(opts.fadeIn); }, opts.delay);
|
|
+ timeout = setTimeout(function() {
|
|
+ tiptip_holder.stop(true,true);
|
|
+ if ($.contains(document.documentElement, org_elem[0])) {
|
|
+ tiptip_holder.fadeIn(opts.fadeIn);
|
|
+ }
|
|
+ }, opts.delay);
|
|
}
|
|
|
|
function deactive_tiptip(){
|