2008-11-11 51 views
1

不工作我使用jQuery的提示,这里是它jQuery的工具提示在IE

的Javascript代码:

this.tooltip = function() 
{ 
    var xOffset = -10; 
    var yOffset = -175;  

    $("a.tooltip").hover(function(e) 
    {            
     this.t = this.title; 
     this.title = ""; 
     var breakdownData = ""; 
     var header = "<b>This document contains:</b><br />"; 

     switch(this.id) 
     { 
      case '_ctl0_MasterContentPlaceHolder_hpl_DownloadCCPS1': 
       breakdownData = "<div style='padding-left:30px;'><br /></div>"; 
       break; 
      case '_ctl0_MasterContentPlaceHolder_hpl_DownloadCCPS2': 
       breakdownData = "<div style='padding-left:30px;'></div>"; 
       break; 
      case '_ctl0_MasterContentPlaceHolder_hpl_DownloadCCPS3': 
       breakdownData = "<div style='padding-left:30px;'></div>"; 
       break; 
      case '_ctl0_MasterContentPlaceHolder_hpl_DownloadCCPS4': 
       breakdownData = "<div style='padding-left:30px;'></div>"; 
       break; 
     } 

     $("body").append("<div id='tooltip' style='width:350px; padding-left:15px; font-size:11px;'>"+ header + breakdownData +"</div>"); 
     $("#tooltip").css("top",(e.pageY - xOffset) + "px") 
        .css("left",(e.pageX + yOffset) + "px") 
        .fadeIn("fast");  
     }, function() { 
      this.title = this.t; 
      $("#tooltip").remove(); 
     }); 

     $("a.tooltip").mousemove(function(e) { 
      $("#tooltip").css("top",(e.pageY - xOffset) + "px") 
         .css("left",(e.pageX + yOffset) + "px"); 
     });   
    }; 
} 

$(document).ready(setTimeout("tooltip()", 500));    

CSS

#tooltip 
{ 
    position:absolute; 
    border:1px solid #333; 
    background:#f7f5d1; 
    padding:2px 5px; 
    color:#333; 
    display:none; 
    width:350px; 
} 

所有我需要做的是将工具提示类添加到锚定标记中,该标记在Firefox中可以正常工作,但不能在IE中使用 。有没有其他人经历过这个?

这里是原来的一个环节,这似乎只是正常工作http://cssglobe.com/lab/tooltip/01/

谢谢

+0

是否有任何其他代码需要,或额外的库(jQuery的核心除外)。我试图测试它,但无法让它正常运行(FF3) – 2008-11-11 15:32:12

回答

3

我能够在这两个FF3,IE6,IE7和精细测试。你遇到什么问题?

我做萤火虫收到一个错误但是:

 
fn.call is not a function jquery-1.2.6.js Line 2295 
    jQuery.readyList.push(function() { return fn.call(this, jQuery); }); 

害得我.ready函数改变你的$(document)到:

 
$(document).ready(function(){ 
    setTimeout("tooltip()", 500) 
}); 

不知道这会解决你的问题,但试试看。