【问题标题】:Is it possible to get the image mouse click location with PHP?是否可以使用 PHP 获取图像鼠标单击位置?
【发布时间】:2008-12-11 03:41:23
【问题描述】:

基本上就是标题所说的......

我需要一个图像,当我点击它时,我会调用 script.php,在那个 PHP 脚本文件中,我会得到鼠标点击的图像坐标。

这可能吗?

编辑:
经过几个答案后,我意识到我没有正确描述我的问题......问题是,我无法完全控制 HTML。我对图像和图像链接的控制是 BBCode 为我提供的控制。

我想要做的基本上是拥有一个论坛签名,其中包含指向我网站上各个部分的链接。您可能会争辩说我可以使用多张图片,但大多数论坛限制了您可以为签名输入的数量,这对于多张图片来说是不够的。

所以,我只能做这样的事情:

[url=http://www.mydomain.com/script.php]
[img]http://www.mydomain.com/signature.jpg[/img]
[/url]

翻译成这样的:

<a href="http://www.mydomain.com/script.php">
<img src="http://www.mydomain.com/signature.jpg" />
</a>

【问题讨论】:

    标签: php image mouse click location


    【解决方案1】:

    如果你不能:

    1. 使用 JavaScript,或
    2. 使用 input type="image",或者
    3. 为您的 img 标签添加任何属性(以执行创建图像映射等操作)

    那么,不,您将无法按照您的描述进行操作。

    【讨论】:

      【解决方案2】:

      如果您使用输入 type="image",其作用类似于按钮,它将向您发送鼠标单击的 x 和 y 坐标(也提交表单)。

      更多信息在这里:http://www.htmlhelp.com/reference/html40/forms/input.html#image

      我已经很久没有使用它了,但我确实让它适用于“球在哪里?”多年前在一个网站上的竞争。

      更新:

      听起来环境太有限了,无法做你想做的事。如果论坛让你做一个可行的图像地图,但我怀疑他们会让你。我能想到的只有其他东西是 flash 或 javascript,同样,它们可能不允许它们。您需要比图像和锚点更聪明的东西来完成这项工作。

      【讨论】:

      • 我做不到 :( 我刚刚更新了我的帖子,提供了有关我的问题的更多信息。
      【解决方案3】:

      如果你设置图片输入name="foo",那么$\_POST['foo\_x']$\_POST['foo\_y']会被设置为图片坐标。

      【讨论】:

      • 我为 标签尝试过,但没有成功。但是我想您的建议与 Seanb 的回答中的内容相符吗?如果是这样,我更新帖子中的相同信息也适用。
      • BBCODE 不会让你为所欲为。必须有一个
        。图片必须是 标签。
      【解决方案4】:

      您可以尝试使用 W3C Image Maps

      图像地图允许作者指定 图像或对象的区域和 为每个人分配一个特定的动作 区域(例如,检索文档、运行 程序等)当区域是 由用户激活,动作是 执行。

      但是在 BBCode 的论坛上,我真的不认为你能得到你想要的东西。

      【讨论】:

        【解决方案5】:

        除非您可以将内联事件处理程序添加到 bbcode 中的 url,否则这是不可能的。

        【讨论】:

          【解决方案6】:

          另一个解决方案,虽然不适用于 BBCode,但对 img 使用 ismap 属性。但对于其他需要精确坐标的人来说可能很有价值。示例:

          <a href="link.html"><img src="shapes.jpg" alt="Shapes" ismap="ismap"/></a>
          

          x 和 y 坐标将作为 GET 参数传递给 link.html

          【讨论】:

            【解决方案7】:

            您可以在执行“onclick”时使用 ajax 请求向“script.php”发送请求。否则我会阅读 php,它是一种服务器端语言。

            【讨论】:

              猜你喜欢
              • 1970-01-01
              • 2011-03-31
              • 2019-07-30
              • 1970-01-01
              • 2015-02-02
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              相关资源
              最近更新 更多