Fix: A better way to use jQuery tooltips.
This commit is contained in:
parent
f201e31b93
commit
015d265ee9
@ -155,13 +155,10 @@ class Form
|
||||
$htmltext=str_replace("<br>\n","<br>",$htmltext);
|
||||
$htmltext=str_replace("\n","",$htmltext);
|
||||
|
||||
if ($conf->use_javascript_ajax)
|
||||
{
|
||||
$htmltext=str_replace('"',""",$htmltext);
|
||||
$paramfortooltip.=' title="'.$htmltext.'"';
|
||||
}
|
||||
|
||||
$s="";
|
||||
$htmltext=str_replace('"',""",$htmltext);
|
||||
$paramfortooltip.=' class="classfortooltip" title="'.$htmltext.'"'; // Attribut to put on td tag to store tooltip
|
||||
|
||||
$s="";
|
||||
$s.='<table class="nobordernopadding" summary=""><tr>';
|
||||
if ($direction > 0)
|
||||
{
|
||||
|
||||
@ -1,85 +0,0 @@
|
||||
// Copyright (C) 2005-2010 Laurent Destailleur <eldy@users.sourceforge.net>
|
||||
//
|
||||
// Javascript code to put at bottom of pages (avant fin de body)
|
||||
//
|
||||
// \file htdocs/lib/lib_foot.js
|
||||
// \brief File that include javascript functions (included if option use_javascript activated)
|
||||
// \version $Revision$
|
||||
|
||||
|
||||
/***********************************************
|
||||
* Cool DHTML tooltip script- (c) Dynamic Drive DHTML code library (www.dynamicdrive.com)
|
||||
* This notice MUST stay intact for legal use
|
||||
* Visit Dynamic Drive at http://www.dynamicdrive.com/ for full source code
|
||||
***********************************************/
|
||||
|
||||
var offsetxpoint=-40 //Customize x offset of tooltip
|
||||
var offsetypoint=12 //Customize y offset of tooltip
|
||||
var ie=document.all
|
||||
var ns6=document.getElementById && !document.all
|
||||
var enabletip=false
|
||||
if (ie||ns6)
|
||||
var tipobj=document.all? document.all["dhtmltooltip"] : document.getElementById? document.getElementById("dhtmltooltip") : ""
|
||||
|
||||
function ietruebody()
|
||||
{
|
||||
return (document.compatMode && document.compatMode!="BackCompat")? document.documentElement : document.body
|
||||
}
|
||||
|
||||
function showtip(thetext)
|
||||
{
|
||||
if (ns6||ie)
|
||||
{
|
||||
tipobj.innerHTML=thetext
|
||||
enabletip=true
|
||||
return false
|
||||
}
|
||||
}
|
||||
|
||||
function positiontip(e)
|
||||
{
|
||||
if (enabletip)
|
||||
{
|
||||
var curX=(ns6)?e.pageX : event.clientX+ietruebody().scrollLeft;
|
||||
var curY=(ns6)?e.pageY : event.clientY+ietruebody().scrollTop;
|
||||
//Find out how close the mouse is to the corner of the window
|
||||
var rightedge=ie&&!window.opera? ietruebody().clientWidth-event.clientX-offsetxpoint : window.innerWidth-e.clientX-offsetxpoint-20
|
||||
var bottomedge=ie&&!window.opera? ietruebody().clientHeight-event.clientY-offsetypoint : window.innerHeight-e.clientY-offsetypoint-20
|
||||
|
||||
var leftedge=(offsetxpoint<0)? offsetxpoint*(-1) : -1000
|
||||
//alert('curX='+curX+' curY='+curY+' rightedge='+rightedge+' bottomedge='+bottomedge+' leftedge='+leftedge+' tipobj.offsetHeight='+tipobj.offsetHeight);
|
||||
|
||||
//if the horizontal distance isn't enough to accomodate the width of the context menu
|
||||
if (rightedge<tipobj.offsetWidth)
|
||||
//move the horizontal position of the menu to the left by it's width
|
||||
tipobj.style.left=ie? ietruebody().scrollLeft+event.clientX-tipobj.offsetWidth+"px" : window.pageXOffset+e.clientX-tipobj.offsetWidth+"px"
|
||||
else if (curX<leftedge)
|
||||
tipobj.style.left="5px"
|
||||
else
|
||||
//position the horizontal position of the menu where the mouse is positioned
|
||||
tipobj.style.left=curX+offsetxpoint+"px"
|
||||
|
||||
//same concept with the vertical position
|
||||
if (bottomedge<tipobj.offsetHeight)
|
||||
tipobj.style.top=ie? ietruebody().scrollTop+event.clientY-tipobj.offsetHeight-offsetypoint+"px" : window.pageYOffset+e.clientY-tipobj.offsetHeight-offsetypoint+"px"
|
||||
else
|
||||
tipobj.style.top=curY+offsetypoint+"px"
|
||||
tipobj.style.visibility="visible"
|
||||
}
|
||||
}
|
||||
|
||||
function hidetip()
|
||||
{
|
||||
if (ns6||ie)
|
||||
{
|
||||
enabletip=false
|
||||
tipobj.style.visibility="hidden"
|
||||
tipobj.style.left="-1000px"
|
||||
tipobj.style.backgroundColor=''
|
||||
tipobj.style.width=''
|
||||
}
|
||||
}
|
||||
|
||||
document.onmousemove=positiontip;
|
||||
|
||||
|
||||
@ -938,7 +938,22 @@ function top_menu($head, $title='', $target='', $disablejs=0, $disablehead=0, $a
|
||||
if (empty($conf->headerdone)) top_htmlhead($head, $title, $disablejs, $disablehead, $arrayofjs, $arrayofcss);
|
||||
|
||||
|
||||
print '<body id="mainbody"><div id="dhtmltooltip"></div>';
|
||||
print '<body id="mainbody">';
|
||||
|
||||
// Wrapper to show tooltips
|
||||
print '<script type="text/javascript">
|
||||
jQuery(function() {
|
||||
jQuery(".classfortooltip").tooltip({
|
||||
track: true,
|
||||
delay: 0,
|
||||
showURL: false,
|
||||
positionLeft: true,
|
||||
bodyHandler: function() {
|
||||
/*console.log(jQuery(this).attr("tooltipText"));*/
|
||||
return jQuery(this).attr("tooltipText"); }
|
||||
});
|
||||
});
|
||||
</script>';
|
||||
|
||||
/*
|
||||
* Top menu
|
||||
@ -955,16 +970,7 @@ function top_menu($head, $title='', $target='', $disablejs=0, $disablehead=0, $a
|
||||
}
|
||||
|
||||
print "\n".'<!-- Start top horizontal menu '.$top_menu.' -->'."\n";
|
||||
print '<script type="text/javascript">
|
||||
jQuery(function() {
|
||||
jQuery("#tmenu_tooltip *").tooltip({
|
||||
track: true,
|
||||
delay: 0,
|
||||
showURL: false,
|
||||
positionLeft: true
|
||||
});
|
||||
});
|
||||
</script>';
|
||||
|
||||
print '<div id="tmenu_tooltip" class="tmenu">'."\n";
|
||||
|
||||
// Show menu
|
||||
@ -1412,11 +1418,6 @@ if (! function_exists("llxFooter"))
|
||||
if (defined('XDEBUGCOVERAGE')) { var_dump(xdebug_get_code_coverage()); }
|
||||
}
|
||||
|
||||
if ($conf->use_javascript_ajax)
|
||||
{
|
||||
print '<script type="text/javascript" src="'.DOL_URL_ROOT.'/lib/lib_foot.js"></script>'."\n";
|
||||
}
|
||||
|
||||
// If there is some logs in buffer to show
|
||||
if (sizeof($conf->logbuffer))
|
||||
{
|
||||
|
||||
Loading…
Reference in New Issue
Block a user