我在脚本中安装了 fancybox,但由于某种原因,它没有单击弹出窗口,而是单击了图像的位置。我通过一些以数字方式生成的 php 代码(基于数据库中的信息)运行它。因此,虽然有多个代码块,但其本质上是相同的代码。我只是不知道如何让它发挥作用任何建议都会很棒。我的代码如下。
<?php
if(isset($_GET['package'])) {
$package = ($_GET['package']);
$arr = array();
$items = "SELECT * FROM ind_products";
$item_list = mysql_query($items);
/*$row = mysql_fetch_array($item_list);*/
while($row = mysql_fetch_array($item_list)) {
$arr = explode(',',$row['packages']);
if (in_array("$package",$arr)) {
echo "<form action=\"\" method=\"post\" class=\"jcart\" >";
echo "<div id=\"itemBox\" align=\"left\">";
$item_name = ($row['item_name']);
$size = ($row['size']);
$description = ($row['description']);
$id = ($row['id']);
$photo = ($row['photo']);
$photo2 = ($row['photo2']);
if ($photo == '') {
$photo = 'images/pph.jpg';
}
if ($photo2 == '') {
$photo2 = 'images/pph2.jpg';
}
if ($description == '') {
$description = 'Description goes here!';
}
echo "<input type=\"hidden\" name=\"my-item-id\" value=\"$id\">";
echo "<input type=\"hidden\" name=\"my-item-name\" value=\"$item_name\">";
echo "<input type=\"hidden\" name=\"my-item-price\" value=\"0.00\">";
echo "<input type=\"hidden\" name=\"my-item-url\" value=\"\">";
echo "<p id=\"info_image\">";
echo "<a id=\"single_1\" href=\"$photo2\">";
echo "<img src=\"crop.php?h=85&w=85&f=$photo\" align=\"left\" alt=\"item images\" />";
echo "</a>";
echo "</p>";
echo "<p id=\"info_box\">";
echo "<span id=\"pro_name\">",$item_name,"</span>",'<br>';
echo "<span id=\"pro_size\">",$size,"</span>",'<br>';
echo "<span id=\"pro_des\">",$description,'<br>';
echo "<span id=\"pro_title\">Quantity</span><input name=\"my-item-qty\" type=\"text\" value=\"1\" size=\"3\" />";
echo "<span id=\"pro_input\"></span><input type=\"submit\" name=\"my-add-button\" value=\"add to inquiry\" class=\"button\" />";
echo "</p>";
echo "<div style=\"clear:both; margin-bottom:0.5em\"></div>";
echo "</div>";
echo "</form>";
}else{
// do nothing for now
/*echo "<form action=\"\" method=\"post\" class=\"jcart\" >";
echo "<div id=\"itemBox\" align=\"left\">";
$item_name = ($row['item_name']);
$size = ($row['size']);
$description = ($row['description']);
$id = ($row['id']);
echo "<span id=\"pro_name\">",$item_name,"</span>",'<br>';
echo "<span id=\"pro_size\">",$size,"</span>",'<br>';
echo "<span id=\"pro_des\">",$description,'<br>';
echo 'There are no products to display!!';
echo "<div style=\"clear:both; margin-bottom:0.5em\"></div>";
echo "</div>";
echo "</form>"; */
}
}
}else{
echo 'The packages are not set';
}
?>
fancybox 代码:
$(document).ready(function() {
$("#single_1").fancybox({
helpers: {
title : {
type : 'float'
}
}
});
});
最佳答案
您确定所有必需的脚本(jquery + fancybox)以及所有附加加载的 js 脚本/代码都已加载/初始化且没有错误吗? 在 fancybox-setup-call 之前发生的任何 javascript 错误都会阻止其成功启动。
关于php - 无法初始化 Fancybox 和 PHP,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8284784/