Jquery .ready()函数不起作用

时间:2012-11-25 13:09:48

标签: php jquery zend-framework2

其实我在做zendframework-2.0.3。根据zendframework-ZendSkeletonApplication-zf-release-2.0.3-0-g657a752我添加了所有脚本,但.ready()无效。在我的视图页面中,我只添加了此代码

<script>
    $(document).ready(function(){
      alert('ok');
    });
</script>

但它不起作用,但.click()和其他功能正常工作。这是我在布局中添加脚本的方式                            headTitle('ZF2'。$ this-&gt; translate('Skeleton Application')) - &gt; setSeparator(' - ') - &gt; setAutoEscape(false)?&gt;

    <?php echo $this->headMeta()->appendName('viewport', 'width=device-width, initial-scale=1.0') ?>

    <!-- Le styles -->
    <?php echo $this->headLink(array('rel' => 'shortcut icon', 'type' => 'image/vnd.microsoft.icon', 'href' => $this->basePath() . '/images/favicon.ico'))
                    ->prependStylesheet($this->basePath() . '/css/foundation.min.css')
                    ->prependStylesheet($this->basePath() . '/css/foundation.css')
                    ->prependStylesheet($this->basePath() . '/css/app.css')
                    ?>

    <!-- Scripts -->
   <?php echo $this->headScript()->prependFile($this->basePath() . '/js/html5.js', 'text/javascript', array('conditional' => 'lt IE 9',))
                                  ->prependFile($this->basePath() . '/js/bootstrap.min.js')
                                  ->prependFile($this->basePath() . '/js/app.js', 'text/javascript')
                                  ->prependFile($this->basePath() . '/js/jquery.foundation.orbit.js', 'text/javascript')
                                  ->prependFile($this->basePath() . '/js/jquery.js', 'text/javascript')
                                  ->prependFile($this->basePath() . '/js/validation.js', 'text/javascript')
                                  ->prependFile($this->basePath() . '/js/jquery.foundation.alerts.js', 'text/javascript')
                                  ->prependFile($this->basePath() . '/js/jquery.foundation.forms.js', 'text/javascript')
                                  ->prependFile($this->basePath() . '/js/jquery.foundation.buttons.js', 'text/javascript')
                                  ->prependFile($this->basePath() . '/js/date.js', 'text/javascript')
                                   ?>

</head> 

请帮帮我

5 个答案:

答案 0 :(得分:1)

嗯,试试

<script type="text/javascript">
    $(document).ready(function(){
      alert('ok');
    });
</script>

<强>更新

我发现你的结尾标签错了

您正在使用

<script>

将其更改为

</script>

答案 1 :(得分:0)

我在2.0.3中发现的是,如果文档中有body onload=,则不会运行ready函数。它在版本1.4.2中运行。

答案 2 :(得分:0)

我只是遇到了同样的问题,原因是我在布局的底部加载了headScript文件,并且视图中的脚本没有在文档就绪时触发。

解决方案是在布局的head部分加载jQuery。

答案 3 :(得分:0)

在php中遇到同样的问题 而不是 <script type="text/javascript" src="Scripts/jquery.js" />
我把它改成了 <script type="text/javascript" src="Scripts/jquery.js"></script>

答案 4 :(得分:-2)

此方法已被弃用。使用:

$(function() {
   // code that will be executed on DOM ready
});