黑白之间

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::
//Boxy插件的扩展方法
jQuery.fn.qbox=function(options){
    
var node = this.get(0).nodeName.toLowerCase();
    
var self=this;
    
if (node == 'a') {
        $(
this).attr('onclick','').unbind('click').click(function(){return false;});
        options 
= $.extend({src:this.get(0).getAttribute('href'),beforeUnload:function(){ $(self).unbind('click').click(function(){return $(this).qbox(options);});}},options||{}); 
    }
   qBox.iFLoad(options);
   
return false;
}
var qBox=function(){};
jQuery.extend(qBox,{
    aDgs:[],
    iFrame:
function(op){ 
            op 
= jQuery.extend({title:'提示',w:320,h:200,src:'about:blank',modal:false,fixed:false,unloadOnHide:true},op),fm=parseInt(Math.random()*(1000*987));//
            var dialog = new Boxy("<b id=\"ld"+fm+"\">正在加载,请稍后....</b><iframe id=\"_"+fm+"\" style=\"width:0px;height:0px;display:none;padding:0;\" src="+op.src+" frameborder=\"0\" scrolling=\"no\"></iframe>",op);   
          
            jQuery(
"#_"+fm).load(function(){   
               dialog.resize(op.w,op.h,
function(){}); 
                  jQuery(
"#ld"+fm).remove();
                  jQuery(
"#_"+fm).css({'padding':'15px','display':''});
            }); 
            qBox.aDgs.push(dialog);
            
return false;
    }, 
    Close:
function(){ 
            qBox.aDgs[qBox.aDgs.length
-1].hide();
            
return false
    },
    iFSrc:
function(op){
             op 
= jQuery.extend({w:320,h:200,src:'about:blank'},op); 
             
var B=qBox.aDgs[qBox.aDgs.length-1];
             B.setTitle(op.title);
             B.getContent().attr({
'src':op.src}); 
             B.tween(op.w,op.h,
function(){ 
                      B.getContent().css({
'width':op.w+'px','height':op.h+'px'});
                 }); 
             
return false;
    },  
    iFLoad:
function(options){ 
            
var sr= jQuery(this).attr("href");
            
var op = jQuery.extend({src:sr},options);
            qBox.iFrame(op); 
            
return false;
    }
});

 

2010年7月24日附加演示并修改了代码

下载演示: jQuery.Boxy.iFrame


 

 原创

 转载请保留出处 cn795.cnblogs.com

 

posted on 2010-07-01 13:51  黑白之间  阅读(3109)  评论(2编辑  收藏  举报