poshytip 插件简单好用,美中不足是在IE6中会被select下拉框遮盖
可将如下脚本在poshytip.js之后引入
poshytipExt.js:
(function() { // 如果不是 IE6 不需要继续执行 if(!($.browser.msie && ($.browser.version == '6.0'))) return; // 去除 IE6 中的动画效果 $.fn.poshytip.defaults.showAniDuration = 0; $.fn.poshytip.defaults.hideAniDuration = 0; var pprot = $.Poshytip.prototype; // 重写组件的显示方法 pprot.poshytipDisplay = pprot.display; pprot.display = function(hide) { // 先调用组件显示方法进行处理 this.poshytipDisplay.apply(this, arguments); // 如果是要隐藏,则不再进行处理 if(hide) return; // 在 div 下填充 iframe var $tip = this.$tip , poshytipIframe = $('#poshytip_iframe'); // 第一次需要创建用于遮罩的 iframe if(!poshytipIframe.length) poshytipIframe = $('<iframe style="display:none;position:absolute;" id="poshytip_iframe" />').appendTo(document.body); poshytipIframe.css({ width : $tip.width() + 18 , height : $tip.height() + 17 , top : $tip.css('top') , bottom : $tip.css('bottom') , left : $tip.css('left') , right : $tip.css('right') }).show(); }; // 重写组件重置方法 pprot.poshytipReset = pprot.reset; pprot.reset = function() { $('#poshytip_iframe').hide(); this.poshytipReset.apply(this, arguments); }; })();