我有以下功能:
function loader($time,$page){
echo "<script type='text/javascript'>
$( document ).ready(function() {
$('.register-container').hide();
$('.top-color').animate({height:'100%'}, 500);
window.setTimeout(
function() {
$('.loading-overlay').show();
},
600
);
//Simulate loading... and then redirect.
window.setTimeout(
function() {
$('.loading-overlay').hide();
$('.top-color').animate({height:'0px'}, 500);
},
2600
);
});
</script>";
echo '<div class="loading-overlay" >
<div class="loading-circles">
<!-- MAINTAINS CONSISTANT COLOR CENTER -->
<div class="circle hold" ></div>
<!-- ITERATION POINT FOR ANIMATION -->
<div class="circle first"></div>
<div class="circle"></div>
<div class="circle"></div>
</div>
<!-- ICON -->
<div class="name"><img src="images/loader/loadertext-green.png" /></div>
</div>';
echo "<meta http-equiv=refresh content=$time;URL='$page'>";
}
哪个应该将上述jQuery代码添加到页面中,然后执行它。
现在我的问题是,当在页面中调用函数时,如下所示:
<?php
if($checksuccess){ loader("4","/account"); }
?>
我收到以下jQuery错误:
Uncaught ReferenceError: $ is not defined
我做错了什么?
答案 0 :(得分:2)
Php期待$符号后面的变量名,因为你使用的是双引号。
尝试在echo中使用双引号更改单引号,并使用单引号将其括起来。与你相反。
答案 1 :(得分:0)
您的第二个echo
块以单引号开头和结尾,应该是双引号。此外,echo内部的字符串必须转义双引号。你通常可以在html中使用单引号,但最好不要使用双引号。
echo "<div class=\"loading-overlay\" >
<div class=\"loading-circles\">
Use escape \" on html attributes when echoing from PHP
</div></div>";