问题标签 [window.external]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
329 浏览

c# - window.external 在 C# 应用程序的 IE6 (Win XP SP3) 中不起作用

我一直在我的 c# windows 应用程序中成功使用 window.external 来调用我的 C# 表单中的公共函数。我已经正确设置了 objectforscripting 属性,这在我的具有 Windows 7 和 IE9 的开发机器上运行良好。

然而,在我的测试机器上,这是一台 Windows XP 计算机,window.external 无法正常工作。当我检查 window.external 对象的 typeof 时,我得到了“对象”,但是当我尝试为函数枚举它时,什么都没有。

当我尝试调用该函数时,没有任何反应。一定有一个javascript错误,但不知道它是什么,因为浏览器没有告诉我。

我确信 windows.external 非常受欢迎,人们肯定在所有操作系统上都使用过它,包括 WinXp 和 IE6。知道为什么这会发生在我身上吗?

0 投票
1 回答
1019 浏览

c# - window.external.notify 传递字符串以外的数据

我正在尝试编写一个 Windows Phone 应用程序,并且我想在用户想要执行操作时调用一个委托。但问题是必须在网页中执行操作,并且必须在应用程序内部处理事件。我知道这不是一个完美的设计,但我所做的只是尝试探索修改从网络浏览器控件传递回应用程序的数据的方法。

这是我的问题,

我目前正在使用 window.external.notify(somestrings) 并使用反射来调用后面代码中的方法。除了传递一个字符串之外,我还可以传递一个泛型Object,当传递给 C# 代码时,该泛型可以稍后被类型转换为一个委托对象,然后可以调用该委托对象?

如果不是委托,我可以通过传递函数的名称在后面的代码(C#)中调用作为应用程序一部分的方法吗?

0 投票
0 回答
108 浏览

.net - Mono 中的 Window.External

我是 ac# 开发人员,目前使用单声道开发应用程序。目前我在我们的java脚本文件中使用window.external来访问csharp中的方法。但是当我以单声道运行我的项目时。window.external 不支持。window.external 会在不久的将来支持单声道吗?或者是否有任何其他方法可以从单声道中的 javascript 访问 csharp 中的方法

期待帮助。

谢谢

0 投票
2 回答
2804 浏览

javascript - 窗口外部空?

当我想在 Internet Explorer 9 上使用 window.external 时,它始终为空。我想使用固定方法,但由于窗口外部为空而找不到方法。如果想知道什么是“固定”,您可以查看此链接。 http://msdn.microsoft.com/en-us/library/gg131029(v=vs.85).aspx 任何机构都可以帮助我吗?

0 投票
1 回答
1343 浏览

javascript - 在 WebBrowser 托管页面中为 window.external 提供 VB6 对象

使用 .NET WebBrowser 控件,我们可以:

wherea_class被声明为[ComVisible(True)].

之后,a_class页面中名为 的 javascript 可以访问该实例window.external

如何使用 VB6/VBA WebBrowser OCX 控件实现相同的功能?

显然没有要设置的直接属性。

有和对象,两者都没有 假设页面已加载),但是将某物的实例分配给后者会导致WebBrowser1.Document.parentWindowWebBrowser1.Document.parentWindow.externalnull

运行时错误 445
对象不支持此操作。

只是为了排除它,我让我想要传递的类实现了IObjectSafetyinterface,但这没有做任何事情(IObjectSafety甚至没有调用成员)。

parentWindow.external我还尝试使用 TypeLib Information检查现有对象。ClassClassInfoFromObject因“不支持自动化或所需接口”InterfaceInfoFromObject而失败,因“下标超出范围”而失败。

0 投票
1 回答
3686 浏览

c# - C# WebBrowser 控件:window.external 访问子对象

将对象分配给ObjectForScriptingWebBrowser 控件的属性时,JavaScript 可以使用windows.external.[method_name]. 这没有问题。

但是当我有这样的 JavaScript 函数(访问子对象)时,我需要如何设计这个 C# 对象:window.external.app.testfunction();

ObjectForScripting我使用分配给该属性的以下 C# 对象对其进行了测试:

但不幸的是,这不起作用,并导致 JavaScript 错误说“预期功能”。

关于 C# 对象必须如何看起来像这个 JavaScript 命令正在工作的任何想法?

感谢您对此的任何提示

安德烈亚斯

0 投票
2 回答
1964 浏览

c# - WebBrowser 控件:window.external 访问数组

我正在尝试从 Javascript 中的 C# 访问数组。

那是 JavaScript 代码:

我使用分配给 ObjectForScripting 属性的以下 C# 对象对其进行了测试:

尝试访问testArray.length它时已经抛出一个 JavaScript 错误,提示“预期功能”。

那么如何将数组返回给 JavaScript 代码呢?

JavaScript 代码已修复(我无法修改)。因此,该函数将被调用,window.external.testfunction()并且 JavaScript 代码需要一个数组作为返回值。

我怎样才能从 C# 方面实现这一点?

最好的问候,并感谢您对此的任何想法

安德烈亚斯

0 投票
1 回答
1488 浏览

javascript - 获取 window.external 工作应遵循的规则

javascript我在我的WPF项目中发现了一件事。它调用了

window.external.ShowWindow();

我发现该方法是在InteropClass下面的类中编写的。

并调用该方法。我正在尝试分析它,因为我已经使用了如下所示的已构建类

并试图将其称为

window.external.AnotherMethod();

但它不工作。错误警报说

window.external 对象不支持另一个方法

我知道这两个类在很多方面都不同,我可以让它工作,但我的问题是要遵循什么规则才能使这个工作,可能就像类必须直接继承自Object或其他。

0 投票
1 回答
1140 浏览

javascript - Window.External.Notify 的正确条件已定义

我正在开发需要在 javascript 中调用 window.external.notify 的混合应用程序,但是这个 js 代码也应该在浏览器中运行。所以我们必须有一个条件来检测window.external.notify是定义的还是未定义的。所以我们使用该代码,但在运行时 window.external.notify 显示它的值就像那个 {...} (但无法打开)。有什么办法可以处理吗?

0 投票
1 回答
1245 浏览

javascript - 如何检查 window.external 上是否存在函数

如何检查 window.external 上是否存在函数?

我正在从 javascript 调用 C# 代码,并且我想检查 C# 对象中是否存在方法。