gpt4 book ai didi

java - 新的 Chrome 更新阻止了 Java;在调用我的小程序代码之前,我如何才能等到获得许可?

转载 作者:行者123 更新时间:2023-11-30 11:54:13 25 4
gpt4 key购买 nike

最近,Chrome 收到了 a new update它会自动阻止所有插件。它会出现一个栏,询问用户是否允许启用它。 This is what the bar looks like.

我的站点有一个按钮,单击该按钮会加载 Java 小程序并调用其中的方法。问题是它试图在加载 applet 之后立即调用该方法,然后才能授予权限。自然地,这会在我的 Javascript 中提示没有这样的方法。

如何让我的按钮等到小程序被授予权限后再调用它的方法?我无法预加载小程序,因为它是自签名的,而且我不希望在需要时弹出安全对话框。通常情况下,该对话框会暂停 Javascript 并在访问被授予或拒绝时恢复它,但这个新的 Chrome 对话框与网站并行运行。

最佳答案

您可以让 Applet 在成功加载后调用 Javascript 方法。然后,您的 Javascript 将等待调用此方法,然后再尝试访问 Applet。

对于 Java 到 Javascript 的通信,您有几个选择。您可以在 Google 上搜索 JSObject 类,但我的理解是这需要特定于浏览器的二进制文件,因此可能不是一个可行的解决方案。更简单的方法是使用 AppletContextshowDocument 方法来执行 Javascript,如 http://www.brilliantsheep.com/java-to-javascript-communication-made-simple/ 中所述。 .

例如,在您的 Applet 的 init() 方法中,您将拥有如下代码:

getAppletContext().showDocument( "javascript:onAppletIsReady()", "_self" );

然后只需在您的 javascript 中定义一个名为 onAppletIsReady 的方法,该方法会在加载 Applet 后立即执行您之前运行的任何逻辑。

关于java - 新的 Chrome 更新阻止了 Java;在调用我的小程序代码之前,我如何才能等到获得许可?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5812531/

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