Хотя пример работает для меня, он довольно уродлив. Избегайте встроенных обработчиков событий и безумных проблем с ними. Поместите данные в другое место, например, в переменную JS или значение атрибута, где это необходимо. Для всплывающей подсказки лучше всего подходит атрибут title
:
<span title="Hemmed Finish: Every side/edge (½″ to 2″) of the banner are folded and glued (special vinyl solution) or heat pressed. This is the most common and best finish option. Stitched Finish: Every side/edge (1″ to 2″) of the banner are folded in the back and stitched/sewed with white thread. This is not a common option as thread can be seen on the banner.">
finish options...
</span>
Хотя это работает как всплывающая подсказка сама по себе, вы можете использовать прогрессивное улучшение, чтобы заменить эту подсказку в HTML-коде скриптовой, если хотите, например. более гибкий стиль, который идет с этим:
var spans= document.getElementsByTagName('span');
for (var i= spans.length; i-->0;)
if (spans[i].title)
replaceTitle(spans[i]);
function replaceTitle(element) {
var title= element.title;
element.title= '';
element.onmouseover= function(event) {
showhint(title, this, event||window.event, '250px');
};
element.onmouseout= function(event) {
hidehint(...);
};
}