jQueryは簡単なウェブマスク層/ポップアップ層の効果互換性を実現するIE 6、IE 7

3301 ワード

この仕事はウェブサイトのすべてのコードを书くことを要求して、so...たまごが痛くてたまらなくてたまらなくてたまらなくて、私の人はネットのプラグインを使うことができないことを要求して、oh~~my god!!これはなんと千万匹の草原の馬を奔騰させることができる要求なのか~~~
まず簡単な機能を実現します.
需要:Webマスク/ポップアップ、IE 6対応
幸いなことに、本�潘恳郧は厦悪占によってjsのバージョンを占めて、so、自分でjQueryプラグインの形式に书いて、后で使うのが便利です.
屁の話は多く放さないで、真実がありません!
 
  
/*******************************
* @name Layer v1.0
*******************************/
;(function($){
$.fn.layer = function(){
var isIE = (document.all) ? true : false;
var isIE6 = isIE && !window.XMLHttpRequest;
var position = !isIE6 ? "fixed" : "absolute";
var containerBox = jQuery(this);
containerBox.css({"z-index":"9999","display":"block","position":position ,"top":"50%","left":"50%","margin-top": -(containerBox.height()/2)+ "px","margin-left": -(containerBox.width()/2) + "px"});
var layer=jQuery("
");
layer.css({"width":"100%","height":"100%","position":position,"top":"0px","left":"0px","background-color":"#000","z-index":"9998","opacity":"0.6"});
jQuery("body").append(layer);
function layer_iestyle(){
var maxWidth = Math.max(document.documentElement.scrollWidth, document.documentElement.clientWidth) + "px";
var maxHeight = Math.max(document.documentElement.scrollHeight, document.documentElement.clientHeight) + "px";
layer.css({"width" : maxWidth , "height" : maxHeight });
}
function containerBox_iestyle(){
var marginTop = jQuery(document).scrollTop - containerBox.height()/ 2 + "px";
var marginLeft = jQuery(document).scrollLeft - containerBox.width()/ 2 + "px";
containerBox.css({"margin-top" : marginTop , "margin-left" : marginLeft });
}
if(isIE){
layer.css("filter","alpha(opacity=60)");
}
if(isIE6){
layer_iestyle();
containerBox_iestyle();
}
jQuery("window").resize(function(){
layer_iestyle();
});
layer.click(function(){
containerBox.hide();
jQuery(this).remove();
});
};
})(jQuery);

哈哈,是不是很简单,但是此处有个比较大的bug,没法让IE6支持背景色透明,所以,在IE6的显示下,就会出现一大片屎黑色~~~~

现在来说说 使用方法:

第一步:引用jquery文件,这个不多说,自己下去吧,http://jquery.com

第二步:把我这个插件引用进去,这个也不多说, 点击下载,

第三步:你看,你要显示在中间的内容box,我是不是没法给你实现,所以,需要你自己建一个,放在网页最下端即可,

eg:
 
  


, ~~



ステップ4:このコンテンツボックスを弾き出す場所に時間を追加し、clickを例に挙げます.
 
  
$("#tan").click(function(){
$("#kabulore-layer").layer();
});

大成功!
注意:このプラグインは灰色の領域をクリックする時、このポップアップ層は自動的に隠して、もし閉じるボタンをプラスして更に隠すならば、自分でclose事件を書くことができます