как привязать слой к слову
Здравствуйте!
Этот слой - всплывающая подсказка. Можно ли его привязать не к странице, а к слову? #layer2 { background-color:#ffffff; position: absolute; overflow: auto; border-bottom: 1px solid; border-top: 1px solid; padding: 2px 10px; width:400px; height: 400px; left: 5%; top: 5%; visibilitY:hidden; } |
что есть слово?
<b>С</b>л<span>о<i>в</i></span>о- это слово? Так вот привязаться можно к элементу (тегу) на странице, так как его координаты можно получить. |
а получить координаты элемента можно с помощью статьи
|
Загадочный ответ...
Вызывает новые вопросы: 1. как получить эти координаты, 2. в таблице стилей все равно писать пиксели, 3. ссылка на функцию не изменится? Слово - это просто слово, например, "файл". Я представляю, что нужный мне результат выглядит, как контекстное меню в Windows: подсказка всплывает в зависимости от положения слова на экране сбоку, сверху или снизу от него. Как сделать - не знаю. Пока подгоняю методом подбора координат - муторно. |
Цитата:
|
Цитата:
var div=document.getElementById('id'); // как вариант div.hint='текст подсказки'; // тут же вешаем обработчики на него, создаём узел подсказки со своим классом в этом же диве. Это можно сделать в цикле, если таких элементов много. |
А если тебе не нужно каких-либо эфффектов при появлении/скрытии подсказки, можно сделать ещё проще:
1. Использовать стандартную подсказку. 2. Сделать её на CSS(если необходим свой стиль отображения). Но тогда для совместимости это должна быть ссылка. |
Кое-что поняла, спасибо, и даже сделала, но вариантов так много... Если еще есть варианты, поделитесь, пожалуйста.
|
если тебе хочется еще вариантов, то держи:
1)можно все-таки кое-что сделать именно для слов. но надо делать вручную. берем разбираем все textNode-элементы их можно плучить например просмотрев все textNode-потомки каждого из тегов(document.getElementsByTagsName('*')) в каждом из них регуляркой находим необходимые нам "слова" , и обрачиваем их в HTML-тег(например в SPAN), после чего на этот тег можно уже повесить свой скрипт(обработчик onmouseover,onmouseout,onmousemove) всплывающей подсказки таким образом мы можем для всех "слов", котрые пожелаем сделать подсказку в идеале этот скрипт может например принимать список пар "слово"->"подсказка", и сам разнесет эти подсказки по документу, либо по его части в реализации такого скрипта вам понадобятся статьи: http://javascript.ru/RegExp http://javascript.ru/start/dom http://javascript.ru/tutorial/basic/regular-expression если появятся уточняющие вопросы, не освещенные в этих статьях, задавайте. отвечу, либо дам ссылку на необходимый вам материал |
Вобщем, если нужна тупо подсказка для чего-либо - юзаем стандартные вещи, если такой вариант не в кайф и нада всё это дело оформить - юзаем CSS это оч просто. Могу скинуть темповый вариант ;)
|
Часовой пояс GMT +3, время: 01:19. |