Подсказка jQuery не работает в IE - PullRequest
1 голос
/ 11 ноября 2008

Я использую подсказку jquery, и вот код для нее

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/

Спасибо

1 Ответ

3 голосов
/ 11 ноября 2008

Я смог протестировать его в FF3, IE6 и IE7. Какие проблемы вы испытываете?

Я получил одну ошибку в Firebug, однако:

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

Что заставило меня изменить функцию $ (document) .ready на:

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

Не уверен, решит ли это вашу проблему, но попробуйте.

...