我想知道是否有一种方法只在文档准备就绪时加载脚本的一部分,我的意思是当所有的css,js和图像都被下载时运行有点重的PHP脚本。
在php中我知道可以使用if else但是在jquery上吗?可以是:?
<script>
jQuery( document ).ready(function( $ ) {
</script>
<?php
$script = $this->getAllItems();
?>
<script>
});
</script>
<div class="page">
<?php echo $this->getChildHtml('header'); ?>
<div class="main-container col2-left-layout">
<div class="main container_16 clearfix">
<div class="col-main grid_16">
<?php echo $this->getChildHtml('top_callout'); ?>
</div>
<div class="col-main grid_16">
<?php echo $this->getChildHtml('breadcrumbs'); ?>
</div>
<div class="col-main grid_12">
<?php echo $this->getChildHtml('global_messages'); ?>
on document ready call content
<?php echo $this->getChildHtml('content'); ?>
</div>
<div class="col-left sidebar grid_4"><?php echo $this->getChildHtml('left'); ?></div>
</div>
</div>
<?php echo $this->getChildHtml('footer'); ?>
<?php echo $this->getChildHtml('before_body_end'); ?>
</div>
感谢任何帮助!
答案 0 :(得分:1)
你必须通过ajax这样做。当你的document.ready运行时,PHP早已不复存在。 PHP在服务器端执行,JS在客户端执行。尝试做这样的事情:
<script>
(function($) {
$.ajax({
type: "POST",
url: 'index.php',
data: { }, //send data if needed
success:function(){
alert("Success!");
}
});
</script>
其中url是php脚本的路径。您甚至可以在该php文件中返回一些内容,并在ajax调用的成功处理程序中执行某些操作。
有关AJAX的更多信息,请参见此处:.ajax()