当前位置: 首页 > 知识库问答 >
问题:

如何更改onbeforeunload消息的语言?[副本]

麻阳
2023-03-14

我有一个典型的具有多种语言(法语、英语和荷兰语)的web应用程序,我正在使用页面卸载触发器来警告用户在离开页面/关闭选项卡/等等时未保存的更改。这个很管用。

我的问题是,在不改变浏览器语言的情况下,我如何改变对话框标题和“离开此页”和“留在此页”两个框的onbeforeunload消息的语言?

共有1个答案

耿联
2023-03-14

当前无法更改OnBeforeUnload对话框的浏览器默认UI,因为它很容易被滥用:

  • 自定义浏览器的对话框将允许开发人员欺骗用户留在页面中(例如更改按钮的文本内容或隐藏它们)。
  • 您不能用自己的代码替换OnBeforeUnload对话框,因为这样,开发人员将决定何时可以关闭窗口,而这不是浏览器的工作方式。

控制浏览器的是用户,而不是开发人员。因此有这些限制。

只要假设用户的浏览器使用的是一种他/他能够理解的语言,并且他/他能够从那里理解。这是我们目前最好的了。

参见相关线程

这种情况在以后的影子DOM和新的API中可能会改变,但我想不出任何不会被轻易滥用的方法(除了请求一个“防止关闭”API,类似于浏览器处理GetUserMedia)。如果您觉得这是一个重要的特性,可以帮助其他开发人员,请随时向WHATWG建议。

 类似资料:
  • 在使用JAXB对XSD文件进行XML验证期间,如果XML文件无效,我会得到。我通过调用。结果字符串是德语。 我使用的是JAXB2.2。在德国系统上使用Java8。 是什么决定了JAXB异常消息的语言,以及如何将其更改为英语? 以下是代码: 这是事件处理程序: 下面是事件处理程序输出的示例:

  • 问题内容: 我有java.util.logging可以将输出打印到文件中。它工作正常。但是,消息包含中文字符,它们对应于 日志级别 和消息记录的时间。 如何使它打印英文而不是中文字符? 这是当前消息的样子 问题答案: 通过在命令行中传递语言以覆盖操作系统的当前默认语言来启动应用程序。

  • 问题内容: 我正在按照以下内容进行编写,其中在比较两个Unicode文本的多行块时,我试图产生一个不错的错误消息。进行比较的内部方法会引发一个断言,但是默认的解释对我没有用 我需要在代码中添加如下内容: 我无法弄清楚如何在我捕获的assertionerror中更改打印的错误消息。我总是得到,它仅显示输出的第一行。 如何更改断言消息以打印出我想要的任何内容? 如果相关的话,我正在运行测试。 问题答案

  • 在我的应用程序中,用户应该能够切换区域设置(用于在页面上呈现文本的语言)。大量教程使用FacesContext.get货币实例()。getViewRoot()。setLocale()。例如:http://www.mkyong.com/jsf2/jsf-2-internationalization-example/.但是,这在JSF 2.0中根本不起作用(它在1.2中确实起作用)。这种语言从不切换。

  • 我正在使用kartik yii2小部件fileinput。我将“maxFileSize”设置为1024。当上传的文件超过允许的最大大小时,会显示错误消息,我想更改此错误文本并用格鲁吉亚语显示。我怎样才能做到这一点?这是我的密码: 我需要更改此错误消息:

  • 问题内容: 现在我知道苹果不推荐这样做。 通常,您不应在应用程序内更改iOS系统语言(通过使用AppleLanguages首选项键)。这违反了在设置应用程序中切换语言的基本iOS用户模型,并且还使用了未记录的首选项键,这意味着将来某个时候,键名可能会更改,这会破坏您的应用程序。 但是,这是一个可以随时更改语言的应用程序,请相信我。我也知道有人问过这个问题:在运行iOS时以编程方式实时更改语言。但是