3

我有一个 html 代码,其中有两个 javascript。我想将 1 个 javascript 的功能调用到另一个中。下面给出的是我的javascript的结构。

<html>
<head>
<script>
function a()
{
//function code
this.parent["asd"].b(); //problem in dis line 
}
</script>
<body>
<script>
var asd= new Asd();
function b()
{
//function code here
}
</script>
</body>
</html>

当我在本地或从 Web 服务器使用它时,它工作正常。但是,如果我在我的 facebook 应用程序中上传此页面,则父类会指向其他地方,因为它位于 iframe 中。如何解决它。有没有其他方法可以调用该函数。

4

6 回答 6

4

你可以:

=> 将您要使用的两个 javascript 合二为一

或者

=> 首先包含一个文件,您要在另一个 javascript 中使用哪个函数,这样它就会自动从该 javascript 文件中获取值。

于 2012-09-21T05:49:38.523 回答
2

您是否在同一个脚本标记中编写函数或在另一个它很容易使用函数名称调用的函数并不重要,如下所示

<html>
<head>
<script>
function a()
{
//function code
b(); //problem in dis line 
}
</script>
<body>
<script>
var asd= new Asd();
function b()
{
//function code here
}
</script>
</body>
</html>
于 2012-09-21T05:38:27.400 回答
1

将所有 Javascript 文件合并为一个完整的文件总是更好js。因此,您可以将两个 javascript 文件合并在一起。这也可以让你摆脱这个麻烦。你也可以看到这个线程

于 2012-09-24T10:44:05.860 回答
1

没关系。您可以在同一文件中调用 HTML 中已引用的任何函数。因为最终所有内容都在同一页面中。

于 2012-09-24T11:36:10.197 回答
1

你可以尝试eval("asd").b();而不是this.parent["asd"].b();

于 2012-09-24T11:28:23.867 回答
0

谢谢大家。我得到了解决方案。我从 javascript 中删除了功能词。现在它工作正常。

于 2012-09-24T11:54:31.660 回答