Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   всплывающая подсказка в определенном месте (https://javascript.ru/forum/misc/56966-vsplyvayushhaya-podskazka-v-opredelennom-meste.html)

polosatik 12.07.2015 20:49

всплывающая подсказка в определенном месте
 
Добрый день.
Интересует, как сделать всплывающую подсказку в определенном месте блока,картинки.
есть картинка размером 200Px на 200Px и на ней область примерно 20px на 20px нужно при попадании или клике на неё появлялась подсказка .
Как это возможно реализовать?

рони 12.07.2015 21:03

polosatik,
накрыть прозрачным элементом нужную область или вычислять позицию клика

polosatik 12.07.2015 21:12

Цитата:

Сообщение от рони (Сообщение 378945)
polosatik,
накрыть прозрачным элементом нужную область или вычислять позицию клика

Если позиция клика известа?

рони 12.07.2015 21:18

Цитата:

Сообщение от polosatik
Если позиция клика известа?

:blink: так ежели оно, тогда того, а если не оно, тогда и не дёргатся.

рони 12.07.2015 22:30

polosatik,
http://htmlbook.ru/html/area

Decode 12.07.2015 23:17

<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8" />
  <title></title>
  <style>
    .outer {
      position: relative;
      width: 200px;
      height: 200px;
    }
    
    .inner {
      position: absolute;
      width: 75px;
      height: 75px;
      background: transparent;
      top: 0; bottom: 0; right: 0; left: 0;
      margin: auto;
    }
    
    .inner:hover + .tooltip {
      display: block;
    }
    
    .tooltip {
      position: absolute;
      top: 20px;
      left: 30px;
      display: none;
      width: 100px;
      height: 20px;
      line-height: 20px;
      padding: 10px;
      font-size: 14px;
      text-align: center;
      color: rgb(113, 157, 171);
      background: rgb(255, 255, 255);
      border: 4px solid rgb(255, 255, 255);
      border-radius: 5px;
      text-shadow: rgba(0, 0, 0, 0.0980392) 1px 1px 1px;
      box-shadow: rgba(0, 0, 0, 0.0980392) 1px 1px 2px 0px;
    }

    .tooltip:after {
      content: "";
      position: absolute;
      width: 0;
      height: 0;
      border-width: 10px;
      border-style: solid;
      border-color: #FFFFFF transparent transparent transparent;
      top: 44px;
      left: 50px;
    }
  </style>
</head>
<body>
  <div class="outer">
    <div class="inner"></div>
    <span class="tooltip">Бла-бла-бла</span>
    <img src="http://goo.gl/KFqbpd" alt="" />
  </div>

  <!--<script>
    document.getElementsByClassName('outer')[0].onclick = function(e) {
      var tooltip = tooltip = document.getElementsByClassName('tooltip')[0];
      
      if(e.target.className == 'inner') {
        tooltip.style.display = (tooltip.offsetHeight) ? 'none' : 'block';
      }
    };
  </script>-->
</body>
</html>


polosatik, если нужно только при клике — разкомментируйте скрипт и уберите селектор .inner:hover + .tooltip в стилях.


Часовой пояс GMT +3, время: 12:05.