当前位置: 首页 > 工具软件 > PoshyTip > 使用案例 >

poshytip插件在IE6中,被select遮罩问题

澹台华晖
2023-12-01

    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);
	};	
})();

 

 

 类似资料: