我想用JS或者其它语言在网页上实现以下功能在网页中插入一张图片,比如像地图一样,我把鼠标移动到北京市这个地方,自动有个框出来提示一些内容。比较提示北京的一些介绍之类的功能。

解决方案 »

  1.   

    简单点的可以用img的alt属性<img alt="" />
    或者自己写个框,我的这个很简易你要根据自己的需求加些东西修改
    <script type="text/javascript">
    function onmouseoverDiv()
    {
        var pox_x=window.event.clientX;
        var pox_y=window.event.clientY;
        var obj = document.createElement('div');
        with (obj.style)
        {
            position = "absolute";
            left=pox_x;
            top=pox_y;
            zIndex =99;
        }
        obj.innerHTML = "<div style='border:#000000 1px solid'>北京很漂亮</div>";
        document.body.appendChild(obj)
    }
    </script>
      

  2.   

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>qTip - CSS Tooltips</title>
    <style type="text/css" media="screen">
    <!--
    div#qTip {
      padding: 3px;
      border: 1px solid #666;
      border-right-width: 2px;
      border-bottom-width: 2px;
      display: none;
      background: #999;
      color: #FFF;
      font: bold 9px Verdana, Arial, Helvetica, sans-serif;
      text-align: left;
      position: absolute;
      z-index: 1000;
    }
    body {
    margin: 0;
    padding: 30px;
    background: #FFF;
    color: #666;
    }
    h1 {
    font: bold 16px Arial, Helvetica, sans-serif;
    }
    p {
    font: 11px Arial, Helvetica, sans-serif;
    }
    a {
    color: #900;
    text-decoration: none;
    font-weight: bold;
    }
    a:hover {
    background: #900;
    color: #FFF;
    }
    hr {
    margin: 24px 0;
    _margin: 0;
    }
    -->
    </style>
    <script language="JavaScript" type="text/JavaScript">
    //////////////////////////////////////////////////////////////////
    // qTip - CSS Tool Tips - by Craig Erskine
    // http://qrayg.com | http://solardreamstudios.com
    //
    // Inspired by code from Travis Beckham
    // http://www.squidfingers.com | http://www.podlob.com
    //////////////////////////////////////////////////////////////////
    var qTipTag = "a"; //Which tag do you want to qTip-ize? Keep it lowercase!//
    var qTipX = -30; //This is qTip's X offset//
    var qTipY = 25; //This is qTip's Y offset//
    //There's No need to edit anything below this line//
    tooltip = {
      name : "qTip",
      offsetX : qTipX,
      offsetY : qTipY,
      tip : null
    }
    tooltip.init = function () {
      var tipNameSpaceURI = "http://www.w3.org/1999/xhtml";
      if(!tipContainerID){ var tipContainerID = "qTip";}
      var tipContainer = document.getElementById(tipContainerID);
      if(!tipContainer) {
        tipContainer = document.createElementNS ? document.createElementNS(tipNameSpaceURI, "div") : document.createElement("div");
        tipContainer.setAttribute("id", tipContainerID);
        document.getElementsByTagName("body").item(0).appendChild(tipContainer);
      }
      if (!document.getElementById) return;
      this.tip = document.getElementById (this.name);
      if (this.tip) document.onmousemove = function (evt) {tooltip.move (evt)};
      var a, sTitle;
      var anchors = document.getElementsByTagName (qTipTag);
      for (var i = 0; i < anchors.length; i ++) {
        a = anchors[i];
        sTitle = a.getAttribute("title");
        if(sTitle) {
          a.setAttribute("tiptitle", sTitle);
          a.removeAttribute("title");
          a.onmouseover = function() {tooltip.show(this.getAttribute('tiptitle'))};
          a.onmouseout = function() {tooltip.hide()};
        }
      }
    }
    tooltip.move = function (evt) {
      var x=0, y=0;
      if (document.all) {//IE
        x = (document.documentElement && document.documentElement.scrollLeft) ? document.documentElement.scrollLeft : document.body.scrollLeft;
        y = (document.documentElement && document.documentElement.scrollTop) ? document.documentElement.scrollTop : document.body.scrollTop;
        x += window.event.clientX;
        y += window.event.clientY;
        
      } else {//Good Browsers
        x = evt.pageX;
        y = evt.pageY;
      }
      this.tip.style.left = (x + this.offsetX) + "px";
      this.tip.style.top = (y + this.offsetY) + "px";
    }
    tooltip.show = function (text) {
      if (!this.tip) return;
      this.tip.innerHTML = text;
      this.tip.style.display = "block";
    }
    tooltip.hide = function () {
      if (!this.tip) return;
      this.tip.innerHTML = "";
      this.tip.style.display = "none";
    }
    window.onload = function () {
      tooltip.init ();
    }
    </script>
    </head>
    <body>
    <h1>qTip - CSS Tooltips</h1>
    <hr/>
    <p>Hover over the <a href="http://www.2ky.cn/" title="This is what the tooltip looks like.&lt;br /&gt;You can style it anyway you like.&lt;br /&gt;You can even add HTML!">Www.2ky.cn</a> to see a tooltip  appear and follow the mouse.</p>
    <p>qTip will work on <a href="#" title="In this case it's all &lt; a &gt; tags">all like elements</a> that are on the page. You can specify <a href="#" title="The JavaScript will take care of the rest.">any HTML tag</a> as your preferred element. Since the title attribute can be applied to any HTML element, this technique is standards compliant!</p>
    <hr />
    <p><a href="qTip.css" title="The CSS makes qTip look pretty.">&raquo; View the CSS</a><br />
    <a href="qTip.js" title="The JavaScript makes qTip function.">&raquo; View the JavaScript</a></p>
    </body>
    </html>你看看效果,也许用得着
      

  3.   

    将图片做成链接,然后链接的title 属性值里输入你想显示的内容。很好用的
      

  4.   

    我找到个跟6楼有点像的。不过这类显示在图片上显示热点好像有点问题。如果只是普通没有美化过的显示我之前用SPAN也可以。
    哪位帮我看一下附件里头那个图片上加了热点之后显示不正常该怎么改。文件显示都正常的。附件下载
      

  5.   

        楼上的写的都很繁杂啊!
         你的那个效果这要是用了windows中的even事件,onmouseover,onmouseout事件。网上一堆,查个自己改改就成自己所需要的了