Chinaunix首页 | 论坛 | 博客
  • 博客访问: 2110912
  • 博文数量: 82
  • 博客积分: 2010
  • 博客等级: 大尉
  • 技术积分: 880
  • 用 户 组: 普通用户
  • 注册时间: 2005-03-14 00:01
文章分类

全部博文(82)

文章存档

2014年(1)

2011年(1)

2009年(8)

2008年(11)

2007年(13)

2006年(26)

2005年(22)

我的朋友

分类: 系统运维

2009-01-30 20:15:14

thickbox需要修改thickbox.js中的图像路径设置
var tb_pathToImage = "/thickbox/loadingAnimation.gif";
然后如果要显示调用thickbox,把下面的代码注释掉,并在页面中手工加载imgLoader,
$(document).ready(function(){   
    tb_init('a.thickbox, area.thickbox, input.thickbox');//pass where to apply thickbox
    imgLoader = new Image();// preload image
    imgLoader.src = tb_pathToImage;
});
或者只注释掉tb_init,不让他自动去搜索绑定元素,要显示调用如下
function showbox(obj) {
    //obj就是上面那些绑定的如a.thickbox之类元素
    var t = obj.title || obj.name || null;
    var a = obj.href || obj.alt;
    var g = obj.rel || false;
    tb_show(t,a,g);
    obj.blur();
    return false;
}
也可以直接指定t,a,g等属性

jquery ui 的1.6rc5版本,用以下方法调用dialog
function showbox(t) {
    $("#popS").dialog({
        bgiframe: true,    //在IE6中,不设置此选项会无法盖住select,需要在jquery.com下载bgiframe插件
        height: 210,
        width:320,
        modal: true,
        title: t,    //不设置此选项则会读取div的title属性
        closeOnEscape:true,    //是否允许按escape退出
        resizable: true,    //是否允许resize
        draggable: true,    //是否允许拖动
        overlay: {
            backgroundColor: '#000',
            opacity: 0.5
        }
    });
}
function tb_go(t) {
    if (typeof($("#popS").dialog("isOpen")) == "undefined") {
        showbox(t);
    } else {
        $("#popS").dialog('open');
    }
    //ui-dialog-titlebar-close是关闭按钮,取消绑定可以让不能退出,同时在dialog参数中取消escape,ui-dialog-titlebar是上方的条
    //$("a.ui-dialog-titlebar-close").unbind("click");
    //$(".ui-dialog-titlebar").hide();
}

两者对比:jquery ui在复杂的页面中,如果打开modal,速度很慢.并且加载的东西太多,在复杂页面中刚出来时在ie6中没盖住select,移动一下弹出层才让select被盖住,而且弹出层在整个页垂直居中,而不是可视窗口居中.关闭层时,页面会回到顶部,很不好.
总之,在复杂的页面中,不管是哪种box都慢,特别是在低配置电脑上用ie6,竟然要1500ms才弹出,关闭也差不多要这么久.如果用ff就快.不管哪种box,要能够显示开启或关闭才好.不过还没找到完全满意的,比如还没找到让thickbox在modal时不能按键退出的办法

另外,在用jquery1.3.1时,发觉nth-child查找非常慢,本来1ms,现在要100多ms,页面经常提示是否要中止脚本,完全无法忍受,用find全部然后再eq就正常,但用nth-chlid地方很多,全换太不方便,所以换回1.2.6,一切又正常了.不过,1.3.1中的有些特性比如css位置更多了,期待jquery快修复bug
阅读(2107) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~