在iframe中运行函数| NW.js(node-webkit)

时间:2015-05-04 17:29:09

标签: javascript jquery html iframe nw.js

我正在尝试从父文档调用iframe中的函数集。这就是我的意思..

INDEX.HTML

# install this file in mysite/myapp/management/commands/urldump.py
from django.core.management.base import BaseCommand

from kive import urls


class Command(BaseCommand):
    help = "Dumps all URL's."

    def handle(self, *args, **options):
        self.show_urls(urls.urlpatterns)

    def show_urls(self, urllist, depth=0):
        for entry in urllist:
            print ' '.join(("  " * depth, entry.regex.pattern,
                            entry.callback and entry.callback.__module__ or '',
                            entry.callback and entry.callback.func_name or ''))
            if hasattr(entry, 'url_patterns'):
                self.show_urls(entry.url_patterns, depth + 1)

的test.html

<script>
$('#iframe').contentWindow.showAssetPicker();
</script>
<iframe src="test.html" id="iframe">

这就是我现在所拥有的。正如您所知,索引应该调用iFrame中定义的函数 - 但事实并非如此。它只是告诉我它未定义。

希望这对你有意义。另外,我使用NW.js(node-webkit)来完全控制iFrames。

感谢您的帮助!

2 个答案:

答案 0 :(得分:1)

jQuery-selector返回一个选定DOM元素的数组。在您的情况下,您将选择第一个(也可能是唯一的)元素:

$('#iframe').get(0).contentWindow.showAssetPicker();

答案 1 :(得分:0)

经过一天的搜索,我找到了答案。 这会将javascript上下文设置为iframe,然后调用该函数。

window.frames['iframe'].showAssetPicker();