如何按需加载jqtouch

时间:2010-03-30 07:07:22

标签: jquery jqtouch

我正在尝试按需加载jqtouch,如下所示:

<script type="text/javascript" src="js/jquery.js"></script>
<script type="text/javascript">
    $(function() {
        $.getScript("js/jqtouch.min.js", function() {
             $.jQTouch();
        });
    });     
</script>

Firebug输出:$(_ 3c.selector).tap不是函数

如果我在脚本中包含jqtouch.min.js,就像我为jquery.js所做并调用$ .jQtouch一样,一切都会正常工作。但是,我只想在需要的时候加载jqtouch,但是我似乎无法让它工作。我也试过给jqtouch.min.js做一个ajax帖子并收到同样的错误。

1 个答案:

答案 0 :(得分:2)

当您按需加载jqtouch脚本时,$(document).ready事件会在加载脚本之前触发,因此永远不会执行jqtouch初始化脚本。

解决方案很糟糕....您必须从

修改jqtouch脚本初始化绑定
$(document).ready(function(){...})

$(document).bind('ready',function(){...})

...并且您必须修改自己的代码以在加载脚本

后触发就绪事件
<script type="text/javascript" src="js/jquery.js"></script>
<script type="text/javascript">
    $(function() {
        $.getScript("js/jqtouch.min.js", function() {
             $(document).trigger('ready');
             $.jQTouch();
        });
    });     
</script>