我有一张图片,一个简单的文字菜单和jQuery imagemapster plugin。
当悬停图像区域时,我希望相应的菜单项突出显示(如悬停),当悬停菜单项时,我想要突出显示相应的图像地图区域。
我已经设置了一个简单的jsfiddle来说明问题: http://jsfiddle.net/tqpFU/23/
在基本的jQuery开始之下:
jQuery(document).ready(function ($) {
$('#house').mapster({
mapKey: 'name',
singleSelect: true,
fillOpacity: 0.6,
fillColor: 'FF0000',
});
});
答案 0 :(得分:1)
使用函数添加悬停属性:
jQuery(document).ready(function ($) {
$('#house').mapster({
mapKey: 'name',
singleSelect: true,
fillOpacity: 0.6,
fillColor: 'FF0000',
onMouseover: function(){
yourHighlightFunction();
}
});
});
答案 1 :(得分:0)
这个小提琴正是我所寻找的:jsfiddle.net/Tr4hE/2/
几乎完全由ruhley回答att github;谢谢! github.com/jamietre/ImageMapster/issues/133
jQuery(document).ready(function ($) {
$('#house').mapster({
mapKey: 'name',
singleSelect: true,
fillOpacity: 0.6,
fillColor: 'FF0000',
//
onMouseover: function (evt) {
var parts = evt.key.split('-');
var part = parts[1];
highlightArea(part);
},
//
onMouseout: function (evt) {
var parts = evt.key.split('-');
var part = parts[1];
highlightAreaX(part);
}
});
//
$('a').hover(function () {
var parts = $(this).closest('li').attr('class').split('-');
var part = parts[2];
highlightArea(part);
});
//
$('a').mouseleave(function () {
var parts = $(this).closest('li').attr('class').split('-');
var part = parts[2];
highlightAreaX(part);
});
});
//
function highlightArea(key) {
$('area[name=part-' + key + ']').mouseenter();
$('a').removeClass('hover');
$('li.menu-item-' + key + ' a').addClass('hover');
}
//
function highlightAreaX(key) {
$('area[name=part-' + key + ']').mouseout();
$('li.menu-item-' + key + ' a').removeClass('hover');
}