我想要做的是当鼠标悬停在某个区域时更改跨度的样式(背景颜色)。这可能吗?
似乎是这样的(我猜):
span.wind {
padding: 1px;
background: red;
transition: .5s;
-webkit-transition: .5s
}
area.wind:hover > span.wind {
background: blue;
color: #ffffff;
}
完整示例here
答案 0 :(得分:2)
你不能按照目前的方式做你正在尝试的css,但你可以在映射区域放置一个mouseenter和mouseleave事件,将一个类添加到span元素中,从而非常有效地改变它的样式。这样,您可以在样式表中使用预定义值,而不是每次都内联添加和删除它们。
<强> HTML 强>
<p>Blue <span class="wind_changer">wind</span></p>
<img class="map" width="720" height="305" src="http://www.gloper.org/highplay.pt/images/cultura/logocultura.png" usemap="#usa" />
<map name="usa"><area class="wind" coords="387,9,401,9,414,11,425,17,426,27,418,37,404,42,386,49,353,58,319,66,299,68,273,73,249,76,216,78,183,81,147,84,122,86,103,89,72,92,52,95,24,97,3,97,6,90,57,76,28,84,41,79,73,72,89,72,101,68,108,65,121,62,134,60,150,56,170,51,205,45,224,41,240,36,265,30,280,29,299,23,317,19,342,14,364,11,376,9" shape="poly" title="Blue Wind" /></map>
<强> JS 强>
$.noConflict();
jQuery(function() {
jQuery('.map').maphilight();
jQuery('.wind').mouseenter(function(){
jQuery('.wind_changer').addClass('fancy');
});
jQuery('.wind').mouseleave(function(){
jQuery('.wind_changer').removeClass('fancy');
});
});
新CSS
span.wind_changer {
padding: 1px;
background: red;
transition: .5s;
-webkit-transition: .5s;
}
.wind_changer.fancy {background:blue;color:#fff;}