Я делал что-то подобное раньше и использовал следующую технику.
Сначала вам нужно несколько изображений. Карта мира и графика для каждой выделенной страны в том же разрешении, что и карта мира. Выделенная страна должна находиться на той же позиции, что и на карте мира! Последнее изображение пустое.
Теперь создайте карту изображения, которая содержит форму стран.
Следующий шаг, создайте три «слоя», которые будут лежать друг на друге. Слой на заднем плане будет отображать карту мира. Второй будет отображать выделенную страну. В верхней части используйте пустое изображение и карту изображения. Предполагая, что каждая область в изображении имеет имя страны в качестве идентификатора, вы можете использовать следующий скрипт на основе jquery:
$(document).ready(function () {
$('#idoftheimagemap area').each(function () {
$(this).hover(
function () {
//assuming it is an image
$('#idofthehighlightlayer').attr('src', 'images/' + $(this).attr('id') + '.png');
},
function () {
$('#idofthehighlightlayer').attr('src', 'images/blank.png');
}
);
});
});
Для всплывающего окна вы можете использовать qtip .