gpt4 book ai didi

银光 4 : Detect browser F5/refresh and X/Close

转载 作者:行者123 更新时间:2023-12-03 09:55:52 24 4
gpt4 key购买 nike

我想确定如何通过 Silverlight 4.0 甚至在服务器端过滤 F5、刷新按钮、X 和关闭浏览器。

谢谢你

编辑:

就在 2011 年 7 月 28 日的今天,我为我的问题添加了赏金。我以前的解决方案/答案不再适用于 IE 9。

window.onunload = function (e) {
// Firefox || IE
e = e || window.event;
var y = e.pageY || e.clientY;

if (y < 0) {
alert("close");
}
else {
alert("refresh");
}
}

当用户点击 F5、刷新、X 和关闭按钮时,不应出现消息框。以防万一解决方案是onbeforeunload。

谢谢你的帮助!

最佳答案

客户端无法确定应用程序启动是否是用户执行刷新操作的结果。

但是,您可以在服务器端确定页面正在刷新。您可以将以下属性添加到托管 Silverlight 应用程序的 ASPX 页面的代码隐藏中。

public bool IsRefresh
{
get { Request.Headers["pragma"] ?? "").Contains("no-cache"); }
}

现在,您可以使用此属性在 Silverlight 插件中有条件地包含一个值 initParams .
<object ...>
<param name="initParams" value="IsRefresh=<%=IsRefresh.ToString()%>" />
</object>

然后在 Silverlight 代码中,您可以通过以下方式确定应用程序是否因刷新而上次加载:-
if (Application.Current.Host.InitParams["IsRefresh"]  == "True")

关于银光 4 : Detect browser F5/refresh and X/Close,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3456591/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com