تلميح أداة jQuery لا يعمل في IE
-
07-07-2019 - |
سؤال
أنا أستخدم تلميح أدوات jquery وإليك الرمز الخاص به
جافا سكريبت:
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;
}
هل جرب أي شخص آخر هذا؟
هنا رابط للأصل الذي يبدو أنه يعمل بشكل جيد http://cssglobe.com/lab/tooltip/01/
شكرًا لك
المحلول
لقد تمكنت من اختباره جيدًا في كل من 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) });
لست متأكدًا مما إذا كان ذلك سيحل مشكلتك، لكن جربه.
لا تنتمي إلى StackOverflow