我在我的应用程序中使用 jQuery 和 YUI-3.6.0。我正在使用 YUI 历史模块。我尝试在 YUI 历史上创建一个包装器,如下所示。(这保存在“history-wrapper.js”中)
var MyHistory;
(function() {
YUI().use('history', function (Y) {
var history = null;
MyHistory = function() {
history = new Y.History();
};
MyHistory.prototype.save= function() {
history.add({
data : "some data"
});
};
MyHistory.prototype.load= function() {
var data = (history.get("data");
//process data
};
});
})();
我正在使用此包装器和以下代码行
<script type="text/javascript" src="js/jquery.js"></script>
<script type="text/javascript" src="yui/yui/yui-min.js"></script>
<script type="text/javascript" src="js/history-wrapper.js"></script>
<script type="text/javascript">
var jQ = jQuery.noConflict();
jQ(document).ready(function() {
var history = new MyHistory();
history.save();
});
</script>
我在两个不同的应用程序中使用相同的代码。
- 在一个应用程序中,一切正常,因为首先加载了 Wrapper。
- 在其他应用程序中,它抛出“MyHistory is not defined”,因为在加载包装器之前调用了“jQ(document).ready”函数。
我不知道是什么导致了这种行为。谁能帮我?