这是PHP上的CodeIgniter。如何避免回显大片的javascript
在我的(MVC)视图中,我有一个循环,为循环的每个实例创建一个小的浮动图(javascript)。
<?php
for each ($catalog as $book) {
echo "<li>";
echo anchor('controller/manager/'.$key['Title']) . ' is available';
// flot javascript goes here to generate a small graph for this list item
}
unset ($book); ?>
循环本身是PHP,JavaScript的大概是50行左右的代码,我从一些样品别处发展。
因此,为了让代码在这个视图中工作,我需要echo出每一行,否则我打破每个循环的,当我在javascript开始之前终止PHP并重新decalre php在JavaScript完成后。
什么是更有效的方法呢?
OK,我在这一个总的小白...你可以给我一个指针? – Maxcot
找到了:http://www.w3.org/wiki/The_principles_of_unobtrusive_JavaScript – Maxcot
理想的做法是将大部分JS代码放入单独的外部文件中,并使用脚本标记将它们链接到视图文件中。脚本标签可以在HTML头部或在关闭正文标签之前。由于页面加载时间通常更快,我更喜欢后者。jQuery使得以这种方式编写JS更容易B/C它提供了简单的跨浏览器方法来将事件绑定到DOM元素。它还有一个.ready()方法,您可以将代码包装进来,以确保在执行代码时DOM已准备就绪。模块模式也很好融入。 –