如题 小菜才学jquery,现在就是想做一些效果:我在A.aspx页面点击一个按钮 这个按钮调用js从而打开B.aspx页面,B.aspx页面是逐渐显示出来,也就是由透明到实体的一个过程!B.aspx页面中t有个type=submit的button按钮 每次点击这个按钮时页面都会 再次执行由透明到实体的过程 有没有什么方法使B这个页面只在第一次加载的时候才逐渐显示出来 附上我的部分jquery 代码A.aspx 中点击button执行的JS的code:function OpenNew(){
window.open("B.aspx","","menubar=no,scrollbars=no,resizable=no,location=no,status=no",true);
}
B.aspx 中的jquery的code:$(document).ready(function(){$("body").hide() .fadeIn(3000); });
window.open("B.aspx","","menubar=no,scrollbars=no,resizable=no,location=no,status=no",true);
}
B.aspx 中的jquery的code:$(document).ready(function(){$("body").hide() .fadeIn(3000); });
除非你不open放在同一页面或是用div模拟open,然后控制值显示一次
点击button是执行后台.cs文件中的_Click事件 与open 无关啊
用div模拟open,然后控制值显示一次 这个我试试
如果用div模拟open,然后控制值显示一次 既要设置z-index 又要设置颜色 好像做的工作量有点多
我就只想问一下还有没有其他解决方案?
$(document).ready(function(){$("body").hide() .fadeIn(3000); });
这样,postback的时候就不会执行了
后台用jquery?不行啊 那个方法我早试过了 if(!IsPostBack)
{
Response.Write("<Script>$(document).ready(function(){$('body').hide() .fadeIn(3000); });
</Script>");
}那样引用不到jquery,要报错“缺少对象”
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
ScriptManager.RegisterClientScriptBlock(this.Page, this.Page.GetType(), "", "OpenNew();", true);
}
}
B.aspx前台内容为
[code=HTML]<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title></title> <script src="jquery-1.4.1.min.js" type="text/javascript"></script>
<script type="text/javascript">
function OpenNew() {
$("body").hide("slow").fadeIn(10000);
}
</script>
</head>
<body style="background-color:Blue;">
<form id="form1" runat="server">
<asp:ScriptManager ID="ScriptManager1" runat="server">
</asp:ScriptManager>
<div>
<input id="Button2" type="submit" value="button" runat="server"/>
<input id="Text1" type="text" />
</div>
</form>
</body>
</html>code]
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title></title> <script src="jquery-1.4.1.min.js" type="text/javascript"></script>
<script type="text/javascript">
function OpenNew() {
$("body").hide("slow").fadeIn(10000);
}
</script>
</head>
<body style="background-color:Blue;">
<form id="form1" runat="server">
<asp:ScriptManager ID="ScriptManager1" runat="server">
</asp:ScriptManager>
<div>
<input id="Button2" type="submit" value="button" runat="server"/>
<input id="Text1" type="text" />
</div>
</form>
</body>
</html>
var b="0"+window.name;
if(b.length<=1)
{
alert("第一次加载");
window.name=window.name+1;
}
如果不是关掉B页面而只是刷新B页面的话,这段代码可以胜任,
<%
if (!Page.IsPostBack)
{
%><script>alert('!!!!')</script><%
}
%>
放到前台页面看看~
只有第一次才弹出!!!!
postback的时候不会……
用10楼的方法可以
而10楼的方法让我想起了另一个函数方法
ScriptManager.RegisterStartupScript(this, this.GetType(), "", "openNew()", true);这种方法也可以13楼的方法也行 只不过要将代码放入body标签内