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