我有大约10个JS文件的page.php:
page.php文件
<script type="text/javascript" src="somefile1.js"></script>
<script type="text/javascript" src="somefile2.js"></script>
<script type="text/javascript" src="somefile3.js"></script>
...
<div id="pictures"></div>
...
在这个页面中我有一些图片,需要所有这些js,以及一个AJAX函数在每10张图片后进行分页:
AJAX
next page ->
$.post('/LOADMORE.php',{
'group_no': track_load,
'idpag': idpag
},
好的,当用户点击下一页时,AJAX会调用LOADMORE.PHP在 div id =&#34;图片&#34;
中加载更多图片这些图片需要一些Jquery(如上图所示 - 这个jquery函数已经在PAGE.PHP中)用于在屏幕和其他东西中打开更大的图片。
发生的事情是PAGE.PHP中的脚本不能与使用AJAX分页加载的图片一起使用。所以我需要在LOADMORE.PHP中包含所有10个js文件:
<script type="text/javascript" src="somefile1.js"></script>
<script type="text/javascript" src="somefile2.js"></script>
<script type="text/javascript" src="somefile3.js"></script>
<?php
$stmt = $mysqli->prepare("SELECT * FROM posts ORDER BY id DESC LIMIT ?");
...
while($l = $result->fetch_assoc()) {
echo"<img src=$picture>";
}
?>
我的问题1是,是不是我需要在loadmore.php中包含JS才能使其正常工作?
问题2:如果它是正确的,那么loadmore.php中的<script>
不在<head>
标记上是没有问题的吗?因为loadmore.php只是一个在mysql中选择图片并将其带给用户的PHP函数,所以我不应该<head><title><body>...
使用这个标签吗?
答案 0 :(得分:1)
我想建议您使用switch-case来正常工作。不需要在所有页面中包含所有文件,并且您不必在LOADMORE文件中使用所有该标记。 做一件事使用开关案例给出页面名称作为案例,在那个特定的页面中使用你想要的所有JS文件。如下所示,通过使用此方法,您不必在所有页面中包含不必要的文件,并且您的代码可以正常工作。例如: -
switch($page)
{
case "PAGE":
<script type="text/javascript" src="somefile1.js"></script>
<script type="text/javascript" src="somefile2.js"></script>
<script type="text/javascript" src="somefile3.js"></script>
break;
case "LOADMORE":
<script type="text/javascript" src="somefile4.js"></script>
<script type="text/javascript" src="somefile5.js"></script>
<script type="text/javascript" src="somefile6.js"></script>
break;
default:
<script type="text/javascript" src="commonjs1.js"></script>
<script type="text/javascript" src="commonjs2.js"></script>
<script type="text/javascript" src="commonjs3.js"></script>
break;
}
答案 1 :(得分:0)
您是否为LOADMORE.PHP中加载的图片的容器或元素提供了唯一ID? 如果你这样做,他们在PAGE.PHP中对你的js有意义......应该正常工作