利用<input type=image>来巧妙实现map功能

上一篇 / 下一篇  2006-11-02 23:02:35

大家都熟悉HTML标记里的MAP标记吧~,他可以将一个图片进行多个热链接定位。

现在需要在下一个页面进行操作,也就是说一个图片在不传递参数的情况下,要让下一个页面要有不同的反映动作,怎么做呢?

例如:通过点击图片左上我要进入pagea.php 右上我要进pageb.php。如此,你也许要说用MAP直接链接就行了,但我要在这个页面对上一页面进行统计,怎么办呢?`

看看下面的例子:

HTML标记<input TYPE="image" NAME="thisname" SRC="path/image">

PHP对此标记支持的自动生成两个变量
$_POST[thisname_x] --鼠标点击图片的X位置
$_POST[thisname_y] --鼠标点击图片的Y位置

呵呵,看到这里晓得了如何操作了吧~,下面我给个简单的示例(直接拷贝过去就可以了,如果改的话把图片改为你的正确的图片路径就可以了~)~


演示:
======


index.html
----------
<html>
<head>
<title>测试信息</title>
</head>
<body>
<form action="post.php" method="post" name="form1">
<input type="hidden" name="image" value="bg.jpg">
<input type=image src="bg.jpg" name="sub">
</form>
</body>
</html>



post.php
<html>
<head>
<title>操作...</title>
</head>
<body>
<pre>
<?php
$c=getimagesize("$_POST[image]");    //获得图片尺寸

if($_POST[sub_x]<$c[0]/2){        //鼠标点击图片X位置为图片左半部

    if($_POST[sub_y]<$c[1]/2){    //鼠标点击图片的Y位置为上半部
        echo "你点击了图片的左上半部分 x={$_POST[sub_x]} y={$_POST[sub_y]}";
    }else{
        echo "你点击了图片的左下半部分 x={$_POST[sub_x]} y={$_POST[sub_y]}";
    }
}else{
    if($_POST[sub_y]<$c[1]/2){    //鼠标点击图片的Y位置为下半部
        echo "你点击了图片的右上半部分 x={$_POST[sub_x]} y={$_POST[sub_y]}";
    }else{
        echo "你点击了图片的右下半部分 x={$_POST[sub_x]} y={$_POST[sub_y]}";
    }
}
?>
</pre>
<!--
图片走向
        
          0 |
          --+----------------------------------------------------→x++(图片的宽度)
            |
            |
            |
            |
            |
            |
            |
            |
           ↓(Y++图片的高度)
-->
</body>
</html>


以上是个人对这个image提交变量的简单应用,如果你有巧妙的创意~

肯定可以做出一个图形作为引导的站点~

TAG:

 

评分:0

我来说两句

显示全部

:loveliness: :handshake :victory: :funk: :time: :kiss: :call: :hug: :lol :'( :Q :L ;P :$ :P :o :@ :D :( :)

我的栏目

日历

« 2008-12-29  
 123456
78910111213
14151617181920
21222324252627
28293031   

数据统计

  • 访问量: 147
  • 日志数: 8
  • 建立时间: 2006-10-28
  • 更新时间: 2007-05-04

RSS订阅

Open Toolbar