【发布时间】:2012-09-05 17:02:42
【问题描述】:
首先,我总是这么说:对不起,我的英语很差。我希望你能理解我。
当用户尝试关闭选项卡或关闭浏览器时,我需要通知他。 有什么方法可以触发事件以避免浏览器被关闭? 该应用程序是在 Silverlight 中制作的。
提前致谢。
【问题讨论】:
标签: silverlight
首先,我总是这么说:对不起,我的英语很差。我希望你能理解我。
当用户尝试关闭选项卡或关闭浏览器时,我需要通知他。 有什么方法可以触发事件以避免浏览器被关闭? 该应用程序是在 Silverlight 中制作的。
提前致谢。
【问题讨论】:
标签: silverlight
看看下面的例子,还有一个示例应用:
这是关于使用 Silverlight 和 JavaScript 来防止离开网页。
javascript:
<script language="javascript" type="text/javascript">
window.onbeforeunload = askConfirm;
function askConfirm() {
var control = document.getElementById("silverlightControl");
var preventLeave = control.Content.Page.PreventLeave();
if (!preventLeave) {
return;
}
var message = control.Content.Page.LeaveRequested();
return message;
}
</script>
银光代码:
public MainPage()
{
InitializeComponent();
HtmlPage.RegisterScriptableObject("Page", this);
}
[ScriptableMember]
public string LeaveRequested()
{
return "You have unsaved changes to your current document?";
}
[ScriptableMember]
public bool PreventLeave()
{
return (bool)PreventLeaveCheckBox.IsChecked;
}
【讨论】:
这可以通过 javascript 轻松完成。例如:
<html>
<head>
<script type="text/javascript">
<!--
function closeIt(url,name)
{
return "Hi there! I'm a message!";
}
window.onbeforeunload = closeIt;
// -->
</script>
</head>
<body>
<p>I'm a webpage!</p>
</body>
</html>
【讨论】: