Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > JavaScript: Общие вопросы > Открыть окно по наведению на картинку


Автор: Rodman 16.4.2009, 23:12
Дароф...

в 39 строке вывожу рисунок продукта. там же прописую чтобы при нажатии открывалось окно с описанием.
а можно сделать так чтобы окно открывалось не по клику а по наведению на рисунок?

Код

<head>
    <link rel="stylesheet" type="text/css" href="fancy.css" title="screenview" />
    <script type="text/javascript" src="tools/jquery.js"></script>
    <script type="text/javascript" src="tools/jquery.fancybox.js"></script>
    <script type="text/javascript" src="tools/tools.js"></script>
</head>
<script>
        function openWnd(elem) 
        {
            window.open('', 'Window '+elem.id, 'height=300,width=300,toolbar=no')
        }
</script>
<?
    $Host      = "localhost";
    $User      = "user";
    $Password  = "HdfaljsSjk";
    $DBName    = "MyData"; // Database name
    $TableName = "products"; // Name of table to display

    $Link = mysql_pconnect ($Host, $User, $Password);

    $Query = "SELECT Name_Product, Desc_Preview_Product, Pic_Preview_Product, ID_Product  FROM $TableName;";//. $PaginationQuery;
    $Result = mysql_db_query ($DBName, $Query, $Link);
    
    // Create a table with headers.
    print ("<TABLE BORDER=0>\n");
    print ("<TR>\n");
    for ($i = 0; $i < mysql_num_fields($Result)-1; $i++) 
    {
        print "<TD><b>".mysql_field_name($Result, $i)."</b></TD>\n";
    }
    print ("</TR>\n");

    // Fetch the results from the database.
    while ($Row = mysql_fetch_array ($Result)) 
    {
        print ("<TR>\n");
            print "<TD align=\"center\">";
            print "<a id='$Row[3]' href=\"javascript:void(0);\" class=\"link\">  $Row[0]<br><img src='$Row[2]'/> </a>";
            print "</TD>\n";
            print "<TD>$Row[1]</TD>\n";
        print ("</TR>\n");
    }    
    print ("</TABLE>\n");

    mysql_close ($Link);

    function pagination($start,$Link, $DBName, $TableName, $Pagesize) 
    {

        if ( !$Pagesize ) 
            return;

        $Query = "SELECT count(*) as count FROM $TableName";
        $Result = mysql_query($Query);
        $row = mysql_fetch_array($Result);
        $numrows = $row['count'];
        if($start >= $Pagesize) 
        {
           echo "<a href=\"" . $PHP_SELF . "?Pagesize=$Pagesize&start=" . ($start - $Pagesize) . "\">Previous</a> | \n";
        } 
        else 
        {
            echo "Previous | \n";
        }
        if($numrows > ($start + $Pagesize)) 
        {
           echo "<a href=\"" . $PHP_SELF . "?Pagesize=$Pagesize&start=" . ($start + $Pagesize) . "\">Next</a>\n";
        } 
        else 
        {
            echo "Next | \n";
        }
        print "Page " . floor(($start / $Pagesize)+1);
        print " of " . ceil(($numrows / $Pagesize));
        print " | " . $numrows . " Records";
    
    }
?>


Сенкс

Автор: SneG0K 16.4.2009, 23:18
Повесь событие onMouseMove

Автор: Рыжий 16.4.2009, 23:23
Rodman, да, правда это вопрос из серии JavaScript за наведение на "что-угодно" отвечает onMouseOver .

Должно получиться вроде:
Код

        print ("<TR>\n");
            print "<TD align=\"center\">";
            print "<a id='$Row[3]' href=\"javascript:void(0);\" class=\"link\">  $Row[0]<br><img src='$Row[2]' onMouseOver ='openWnd(".$var.")' /> </a>";
            print "</TD>\n";
            print "<TD>$Row[1]</TD>\n";
        print ("</TR>\n");

И $var замени на нужное значение ^_^

Добавлено через 3 минуты и 43 секунды
Да, можно и onMouseMove использовать.
onMouseOver срабатывает когда ты наводишь указатель на объект, onMouseMove же срабатывает даже когда указатель уже был на объекте.

Автор: skyboy 16.4.2009, 23:45
перенесено из PHP: Общие вопросы

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)