Fancybox问题,需要一只手

时间:2014-07-22 07:21:20

标签: javascript php jquery fancybox gallery

我创建了一个图库,其中包含从数据库中提取的图像并使用Fancybox进行显示。我有一些相同的文章,只是不同的颜色,我只显示一个颜色框和下面的颜色框来改变颜色。

  

问题是,当我点击按钮更改颜色时,图片会发生变化,单击Fancybox会显示第一张图片,而不是当前图片

部分代码:

JS:

function changeImage(element,id){
    var img=document.getElementById(id).src=element;
    return false;
}

PHP:

while($row = mysql_fetch_array($sql)){

    $prikaz =$row['prikaz'];
    $id = $row['id'];
    $ime = $row['ime'];
    $thumb = $row['thumbs'];
    $boja = $row['boja_id'];
    $slicka = $row['slika'];
    $spec = $row['tekst'];

    if ($prikaz == 1){

        echo "<table style ='display: inline' align='center'>";
        echo "<tr>";
        echo "<td><a class='fancybox-effects-a' href='$slicka' ><img id='$id' src='$thumb' alt='' /></a></td>";
        echo "</tr>";
        echo "<tr><td>";
        echo "Boja: ";
        $bsql = mysql_query ("SELECT muski.tekst, muski.id,muski.thumbs,boja.bslika FROM boja INNER JOIN muski ON muski.boja_id = boja.id WHERE muski.ime = '$ime' " );                  

        while($res = mysql_fetch_array($bsql)){ 

            $slicica = $res['thumbs'];    
            $muid = $res['id'];
            $kockica = $res['bslika'];
            echo "<button id = 'boja' onclick =changeImage('$slicica','$id')><img src= $kockica ></button>";

        }

        echo "</br>";
        echo nl2br($spec);

}

echo "</td>";
echo "</tr>";    
echo "</table>";

2 个答案:

答案 0 :(得分:0)

我找到了解决方案....我修改了js脚本来改变img的父href ...它的工作原理......

function changeImage(element,id,staza) {
    var img = document.getElementById(id);
        img.src= element;
        img.parentNode.href=staza;
    return false;
}

答案 1 :(得分:-1)

Firebug你的Fancy Box弹出窗口,你必须改变背景图像