问题描述
各位大侠好! 我说一下我的问题:我在页面中使用了jquery(1.3.2版本的)。我在页面中定义一两个层,一个层是隐藏的(页面加载时把它设置为隐藏),一个是正常的,两个层上分别有两按钮,当我点击非隐藏层的显示时,隐藏的div就显示了。当我点击隐藏的div上的隐藏时,将隐藏的div隐藏起来。下面是我的js代码 <script type="text/javascript"> $("#yinCang").hide(); //页面加载时,将隐藏层隐藏 function ShowDialog() { //隐藏下面的层 $('#yinCang').show(); } function cc() { //点击隐藏时清空原来的数据 $("#ctl00_ContentPlaceHolder1_sellPrice").val(""); $("#ctl00_ContentPlaceHolder1_sellCount").val(""); $("#yinCang").hide();//将隐藏层隐藏 } </script>问题是,当页面加载完成后,我点击显示div上的隐藏按钮时,隐藏的div出来了,但是一秒中左右他又自动隐藏了。 我用IE带的脚本调试时,发现当我执行 Show()方法时,程序又执行了我js中的第一句也就是$("#yinCang").hide(); 这是什么原因呢? 我怎样写才能避免这样的事情发生呢?小弟在此先行谢过!
解决方案
昨天不是问了一些问题 搞定了吗 ? 我们聊过的。
解决方案二:
一开始在DIV层中让div隐藏么 然后在写一个方法 点一下隐藏,再点一下 显示么
解决方案三:
应该放在//当页面一开始加载调用$(function(){ $("#yinCang").hide();});
解决方案四:
既然知道那个层需要隐藏,你为啥不直接在这个层上面写个隐藏属性 style="display:none" 这样就不用写什么js了,多好。
解决方案五:
把$("#yinCang").hide(); 放到window.onload中做。body上放个onload事件也可以function init() { $("#yinCang").hide(); //页面加载时,将隐藏层隐藏}<body onload="init()"></body>
解决方案六:
你应该也要用一个方法来封装你的隐藏方法,因为你把隐藏的方法写在全局上,系统很容易执行你那个隐藏方法的
解决方案七:
因为你又在加载啊 你把例子发给我 我给你改改 然后给你写个注释上去,这样说不清楚的。