【问题标题】:Calling function from outside YUI sandbox从 YUI 沙箱外部调用函数
【发布时间】:2012-03-21 09:30:38
【问题描述】:

学习 YUI 并看到一些使用 YQuery tool 在 YUI 3 沙盒方法很有用的特定实现中加载 jQuery 的机会。

但是,我正在努力弄清楚如何访问在 YQuery 沙箱中定义的 jQuery 函数/变量。

请看下面:

<script type="text/javascript">
    YUI().use('gallery-yquery', function(Y) {
        var jq = Y.YQuery();
        jq.version = '1.7.1';
        jq.use( function() {
            $.someFunc = function() {
                // Some Jquery actions
            }
        });
    });
</script>

...

<input type="button" onclick="$.someFunc();" value="someTest"/>

有什么方法可以让我在“$.someFunc”(例如通过按钮)获得?

请注意,此示例恰好是 YQuery,问题在于是否/如何可以在同一页面上从外部访问 YUI“沙盒”中定义的函数/变量。

【问题讨论】:

标签: yui javascript javascript-framework


【解决方案1】:

使用 use() 方法的返回值,不指定回调函数作为最后一个参数。 我猜如果使用 YUI 动态加载器,您可能会遇到并发问题,因为您将无法检测给定实例何时已加载并准备好所有需要的依赖项。

var foo = YUI().use("yui", "event");
alert(foo.guid());
alert(foo.Event.generateId(document.body));

通过:yuilibrary

【讨论】:

  • 我现在明白了为什么 YUI 有一个过于复杂的代表。我需要重新考虑使用它。感谢您的答案和链接。
【解决方案2】:

也许,只是jQuery.someFunc()

【讨论】:

    猜你喜欢
    • 2017-06-24
    • 1970-01-01
    • 2012-04-22
    • 2015-03-20
    • 2013-07-14
    • 2021-05-31
    • 2022-01-26
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多