0

我有一个 Web 应用程序,当客户单击 Drupal Web 内容页面上的链接时,它会在一个新的弹出窗口中启动。

当用户到达 Web 应用程序工作流程中的某个页面时,我想向(仍然打开的)Drupal 页面发送一条消息并传递一些信息(比如我在工作流程中的位置)。

当 Drupal 网站收到此“消息”时,它会在其端调用一些 javascript 来更新当前显示的页面内容。

所以基本上,一种在一个域上执行 Javascript 的方法,从另一个域中的 Javascript 函数。

我可以控制 Drupal 站点和 Web 应用程序,因此任何需要在任一端部署的 javascript 都不是问题。但请注意,这两个站点位于不同的域上,所以我需要实现一些可以跨域工作的东西

我不确定如何实现这一点,到目前为止我已经考虑过 JSON-P。

4

1 回答 1

0

您的两个 Web 应用程序都在客户端运行,因此您无需向服务器询问如何与您已经打开的窗口联系。

因此,为了节省时间和精力,请在客户端的窗口之间进行直接通信。

要将消息发送到另一个 html 页面,您需要首先将打开的窗口保存在一个变量中,如下所示:

// This code is inside the html file that open 
// the drupal site.
var windowOpened = window.open("drupalUrl.html");

但是,在 drupalUrl.html 你需要创建一个全局函数,所以你可以这样调用:

windowOpened.globalFunction(param1, param2);

正如我所说,在 drupalUrl.html 中,您需要创建一个函数:

function globalFunction(param1, param2){
    //show your message
}
于 2013-10-09T01:42:50.203 回答