window.setTimeout("document.getElementById('ddl').style.display='none'",3000);    刚才不小心把dd1写成ddl了,这个不是问题,即使改成ddl,弹出的窗口也是不能在3秒中后消失

解决方案 »

  1.   

    alert没有这个功能
    可以做个层.
    bokee好像就有这个的层提示框。
      

  2.   

    你应该写printE函数里innerHTML的载体吧?就是包含这个innerHTML的DIV或其他元素,而不是ddl
      

  3.   

    载体就是这个ddl啊,再说getElementById('ddl')中的这个ddl我随便改成什么都不好使啊,也不提示错误
      

  4.   

    楼主米看清我说的问题。我说的是,你应该关闭装载 ddl 的那个div!
      

  5.   

    它是装载在这个标记里的
    <SPAN  style="CURSOR: pointer" onclick=addFriend(1274)><IMG 
    src="images/addFriend_large.gif" width="303" height="50"></SPAN>刚才我试了给<span id="ddl"></span>也是不反应,对话框还是没隐藏
      

  6.   

    TRY:
    <html>
    <head>
    <style>
    .loading {width:400px;height:200px;border:1px solid buttonface;text-align:center;}
    </style>
    <script>
    function printE(arr){
    var divobj = document.createElement("DIV");
    divobj.id = "dhlayer";
    divobj.className = arr.className;
    divobj.innerHTML = arr.innerHTML;
    document.body.appendChild(divobj);
    }
    function wait(str){
          str = str ? str : '与服务器通讯中';
          printE({innerHTML: '<div id="ddl" class="error_inner" style="background:#fff; width:130px"><img src="images/spinner.gif" align="absmiddle" />  '+str+'……</div>', className: 'loading'});
          window.setTimeout("document.getElementById('dhlayer').style.display='none'",3000); 
    }function addFriend(id){
          wait("hello");
    }
    </script>
    </head>
    <body onload="addFriend();">
    </body>
    </html>
      

  7.   

    我try了,夭折了,不好用,两个错误
    未结束的字符串常量和缺少对象
    :(
      

  8.   

    <html>
    <head>
    <style>
    .loading {width:400px;height:200px;border:1px solid buttonface;text-align:center;}
    </style>
    <script>
    function printE(arr){
    var divobj = document.createElement("DIV");
    divobj.id = "dhlayer";
    divobj.className = arr.className;
    divobj.innerHTML = arr.innerHTML;
    document.body.appendChild(divobj);
    }
    function wait(str){
          str = str ? str : '与服务器通讯中';
          printE({innerHTML: '<div id="ddl" class="error_inner" style="background:#fff; width:130px"><img src="images/spinner.gif" align="absmiddle" />  '+str+'……</div>', className: 'loading'});
          window.setTimeout("document.getElementById('dhlayer').style.display='none'",3000); 
    }function addFriend(id){
          wait();
    }
    </script>
    </head>
    <body onload="addFriend();">
    </body>
    </html>IE6,Firefox/1.5.0.9测试通过!
      

  9.   

    你这个页我单独运行确实通过了,但是一整合到我自己的文件里就不行了,我把我的PrintE函数列出来,麻烦楼上的给改一下,看看在哪加上那个ID,我自己加了半天都不理想,谢谢function printE(params){
    var title = params.title;
    var error = params.li;
    var type = params.type;
    var innerHTML = params.innerHTML;
    var await = params.await;
    var covering = params.covering ? params.covering : true;
    var action = params.onclick ? params.onclick : 'closePageCover()';
    var width = params.width ? params.width : 500;
    var top = params.top ? params.top : 150;
    var except = params.except;
    var onunload = params.onunload;
    var onload = params.onload;
    var className = params.className;
    if(!innerHTML){
    var innerHTML = '';
    innerHTML += '<div class="error_inner">';
    innerHTML += '<h1>'+title+'</h1>';
    switch(className){
    case 'confirm':  innerHTML += '<span style="position:absolute; margin:10px"><img src="images/confirm.gif" /></span>'; break;
    case 'success':  innerHTML += '<span style="position:absolute; margin:10px"><img src="images/confirm.gif" /></span>'; break;
    case 'error':  innerHTML += '<span style="position:absolute; margin:10px"><img src="images/alert.gif" /></span>'; break;
    default: break;
    }
    innerHTML += '<ul style="margin-left:40px; _margin-left:80px">';
    error.each(function(el,index){
    innerHTML += '<li>'+el+'</li>'
    });
    innerHTML += '</ul>';
    }
    switch(type){
    case 'alert': innerHTML += '<div class="button"><button onclick="closePageCover()" id="printE_Button_OK">好的,我知道了</button></div>'; break;
    case 'action': innerHTML += '<div class="button"><button onclick="'+action+'" style="width:80px">确定</button>&nbsp;&nbsp;<button style="width:80px" onclick="closePageCover()">取消</button></div>'; break;
    case 'cache': innerHTML += '<div class="button"><button onclick="new mui.box(mui_box_cache); new Draggable(\'mui_box\');" style="width:80px">确定</button></div>'; break;
    default:  break;
    }

    innerHTML += '</div>';
    if(type=='alert'){
    new mui.box({width: width, 
    top: top, 
    innerHTML: innerHTML, 
    align: 'center', 
    closeb: true, 
    onunload: onunload, 
    onload: function(){
    if($('printE_Button_OK')){
    var printE_timer_count = 0;
    var printE_timer_limit = 2;
    count_button = $('printE_Button_OK');
    count_button.innerHTML += '&nbsp;'+printE_timer_limit;
    pageCoverTimer = setInterval(function(){
    if(printE_timer_count >= printE_timer_limit-1){
    printE_timer_count = 0;
    closePageCover();
    }

    var pattern = /([\d]+)/i;
    var button_innerHTML = count_button.innerHTML;
    if(pattern.test(button_innerHTML)==true){
    var currentTimeEllapse = parseInt(RegExp.$1)-1;
    button_innerHTML = button_innerHTML.replace(pattern, currentTimeEllapse);
    count_button.innerHTML = button_innerHTML;
    printE_timer_count += 1;
    }
    },1000)
    }
    }, 
    className: className});
    }else{
    new mui.box({width: width, 
    top: top, 
    innerHTML: innerHTML, 
    align: 'center', 
    closeb: true, 
    onunload: onunload, 
    onload: onload, 
    className: className});
    }
    setTimeout(function(){
    if(covering && covering!=false){
    if(except && except == 'player')
    openPageCover({except: 'player'});
    else
    openPageCover();
    }
    },0);
    new Draggable('mui_box');
    }
      

  10.   

    你这个还有几个类啊:
    mui
    Draggable看看这两个类里有没有定义!
      

  11.   

    那几个我感觉应该没它们的事吧,只要在printE里面定义好不就行了吗,那个mui在单独的一个mui.js里将近一千行全是它的,有没有别的方法?
      

  12.   

    石头兄:这是mui.box的函数,不过这个已经定义了var id = 'mui_box';我在让隐藏的那句代码里换上这个无效,是不是也不是这个ID?var mui_box_cache = null;
    mui.box = Class.create();
    mui.box.prototype = {
    initialize: function(params){
    if(params.cache && params.cache==true)mui_box_cache = params;

    if(UA == 'ie' || UA == 'ie7'){
    var page_y_offset = document.documentElement.scrollTop;
    }else if(UA == 'gecko'){
    var page_y_offset = pageYOffset;
    }


    var bodyFirstChild = document.getElementsByTagName('body')[0];//$('wrap');
    var offsetWidth = params.width;
    var width = offsetWidth ? 'width:' + offsetWidth + 'px;':'';
    var offsetHeight = params.height;
    var height = offsetHeight ? 'height:' + offsetHeight + 'px;':'';
    var left = params.left ? params.left + 'px;' : '';
    var top = params.top + page_y_offset + 'px';
    var innerHTML = params.innerHTML;
    var base_prefix = params.prefix ? params.prefix : '/';
    var align = params.align;
    var id = 'mui_box';
    var closeb = params.closeb == true ? true : false;
    var onunload = params.onunload;
    var onload = params.onload;
    var className = params.className;

    if($('mui_box'))Element.remove('mui_box');
    if(!$('mui_box')){
    var _box = document.createElement('div');
    _box.id = id;
    _box.style.width = params.width + 0 + 'px';
    _box.style.position = 'absolute';
    _box.style.top = top;
    _box.style.visibility = 'hidden'; 

    if(align == 'center'){
    //center
    left = (bodyFirstChild.offsetWidth - offsetWidth)/2 + 'px';
    _box.style.left = left;
    //_box.style.marginLeft = left;
    bodyFirstChild.appendChild(_box);
    }else{
    //absolute
    _box.style.left = left;
    document.getElementsByTagName('body')[0].appendChild(_box);
    }


    _box.innerHTML = innerHTML;
    }
    new mui.dropShadow({target: _box.id, closeb: closeb, onunload: onunload, onload: onload, cache: params.cache, className: className});
    //new Draggable(_box.id);
    }
    }