JQuery标题属性工具提示 - 删除浏览器工具提示

时间:2012-01-18 22:59:04

标签: jquery attributes title jquery-tooltip

我有以下用于工具提示的JQuery代码,它使用title属性字符串。我的问题是浏览器工具提示也出现了,我无法弄清楚如何解决这个问题。

function Tooltip() {
   Form.append('<div class="Tooltip"></div>');
   $('input, textarea, select, p, label').mousemove(function(e) {
      var HoverText = $(this).attr('title');
      var Tooltip = $('.Tooltip');
      if(HoverText){
         Tooltip.html(HoverText).fadeIn(100);
         Tooltip.css('left', e.clientX + 15).css('top', e.clientY + 15);
      }
   }).mouseout(function() {
       var Tooltip = $('.Tooltip');
       Tooltip.fadeOut(100);
   });
}

谢谢!

更新

现在删除了title属性,该值存储在$ .data中。不幸的是,mousemove功能不能这样工作......

function Tooltip() {
   Form.append('<div class="Tooltip"></div>');
   $('input, textarea, select, p, label').mousemove(function(e) {
      $(this).data('title', $(this).attr('title')).removeAttr('title');
      var HoverText = $(this).data('title');
      var Tooltip = $('.Tooltip');
      if(HoverText){
         Tooltip.html(HoverText).fadeIn(100);
         Tooltip.css('left', e.clientX + 15).css('top', e.clientY + 15);
      }
   }).mouseout(function() {
       var Tooltip = $('.Tooltip');
       Tooltip.fadeOut(100);
       $(this).attr('title', $(this).data('title'));
   });
}

1 个答案:

答案 0 :(得分:2)

var title = $(this).data('title');
var titleAttr = $(this).attr('title');
if( titleAttr && !title){
    title = $(this).data('title', $(this).attr('title')).removeAttr('title');
}