| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 477 人关注过本帖
标题:求高手帮我修改下代码吧
只看楼主 加入收藏
殘翼
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2012-1-22
结帖率:0
收藏
已结贴  问题点数:20 回复次数:2 
求高手帮我修改下代码吧
$(document).ready(function hide(n){
         $("#lanqiu").hide();
         $("#sheying").hide();
         return true;
         })
     
    window.onload=function()
    {  var n=0;
        $("#m1").click(function(){
            if(n=0){}
        $("#lanqiu").show();n=1;
        
        })
        
        $("#m2").click(function(){
        if(n==1){hide(); $("#sheying").show();}
        else{
        $("#sheying").show();}})
    }
  为什么在调用hide函数后,后面的$("#sheying").show();就无法显示了
搜索更多相关主题的帖子: 函数 function document lanqiu 
2012-01-23 19:28
zzgzzg00
Rank: 7Rank: 7Rank: 7
等 级:黑侠
威 望:2
帖 子:388
专家分:627
注 册:2010-8-2
收藏
得分:20 
网上找的  jquery有点网光了 哈哈
最近在改一个嵌入在frame中的页面的时候,使用了jquery做效果,而页面本身也绑定了onload事件。改完后,Firefox下测试正常流畅,IE下就要等个十几秒jquery的效果才出现,黄花菜都凉了。

  起初以为是和本身onload加载的方法冲突。网上普遍的说法是$(document).ready()是在页面DOM解析完成后执行,而onload事件是在所有资源都准备完成之后才执行,也就是说$(document).ready()是要在onload之前执行的,尤其当页面图片较大较多的时候,这个时间差可能更大。可是我这页面分明是图片都显示出来十几秒了,还不见jquery的效果出来。

  删了onload加载的方法试试,结果还是一样,看来没有必要把原本的onload事件绑定也改用$(document).ready()来写。那是什么原因使得Firefox正常而IE就能呢?接着调试,发现IE下原来绑定的onload方法竟然先于$(document).ready()的内容执行,而Firefox则是先执行$(document).ready()的内容,再执行原来的onload方法。这个和网上的说法似乎不完全一致啊,呵呵,有点意思,好像越来越接近真相了。
结果很明了了,IE只有在页面不是嵌入frame中的情况下才和Firefox等一样,先执行$(document).ready()的内容,再执行原来的onload方法。对于嵌入frame中的页面,也只是绑定在load事件上执行,所以自然是在原来的onload绑定的方法执行之后才轮到。而这个页面中正好在测试环境下有一个访问不到的资源,那十几秒的延迟正是它放大出的时间差。

[ 本帖最后由 zzgzzg00 于 2012-1-25 16:27 编辑 ]

粗心是大敌
2012-01-25 16:23
zzgzzg00
Rank: 7Rank: 7Rank: 7
等 级:黑侠
威 望:2
帖 子:388
专家分:627
注 册:2010-8-2
收藏
得分:0 
你按他的Firefox试试

粗心是大敌
2012-01-25 16:24
快速回复:求高手帮我修改下代码吧
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.017011 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved