Я нахожусь на веб-сайте worpress, и я стараюсь сделать мандалу с меняющимися изображениями.JQuery area mouseover issue
Я использую jquery и область из css, когда мышь находится над разделом, разделенным областью, я показываю соответствующее изображение. Но есть проблема, когда я нажимаю мышь, требуется некоторое время (1 с) перед отображением изображения, и когда я нажимаю мышь на другую секцию, она не работает хорошо.
Я думаю, что проблема связана с тем, что новое выводимое изображение наезжает секции наведения мыши, ограниченной области
здесь HTML-код:
<div class="mandala">
<img id="mandala_img" src="http://example.org/site/wp-content/uploads/2015/02/background.png" usemap="#mandala_map">
<div id="image1"></div>
<div id="image2"></div>
<div id="image3"></div>
<div id="image4"></div>
<div id="image5"></div>
<div id="image6"></div>
<div id="image7"></div>
<div id="image8"></div>
<map name="mandala_map" id="mandala_map">
<area shape="poly" coords="310,10,422,33,498,87,430,154,383,121,310,106" href="http://example.org/site/" id="area_image1">
<area shape="poly" coords="498,87,430,154,479,274,576,274,557,178" href="http://example.org/site/" id="area_image2">
<area shape="poly" coords="479,275,576,275,553,383,499,462,430,393,463,348" href="http://example.org/site/" id="area_image3">
<area shape="poly" coords="499,462,430,393,310,442,310,540,420,516" href="http://example.org/site/" id="area_image4">
<area shape="poly" coords="310,442,310,540,206,518,124,462,192,393" href="http://example.org/site/" id="area_image5">
<!-- <area shape="poly" coords="124,462,192,393," href="http://example.org/site/" id="area_image2">
<area shape="poly" coords="" href="http://example.org/site/" id="area_image2">
<area shape="poly" coords="" href="http://example.org/site/" id="area_image2">-->
</map>
</div>
JS код:
<script type="text/javascript">
$('.mandala area').each(function() {
// Assigning an action to the mouseover event
$(this).mouseover(function (e) {
var image = $(this).attr('id').replace('area_', '');
$('#image1').css('display', 'none');
$('#image2').css('display', 'none');
$('#image3').css('display', 'none');
$('#image4').css('display', 'none');
$('#image5').css('display', 'none');
$('#image6').css('display', 'none');
$('#image7').css('display', 'none');
$('#image8').css('display', 'none');
$('#' + image).css('display', 'block');
});
});
</script>
мандала выглядит следующим образом:
Изображение, отображаемое на мыши над выглядит следующим образом:
спасибо за вашу помощь
Возможно, каждое событие не является лучшим решением. Вы пытаетесь передать событие для каждой области., а затем $ ("# laviedanslanature"). onmouseover = function() {monImage1.css ('display', 'block')} –
dpfauwadel
вот предложение ... почему не вы отобразить области на прозрачном экране перед изображением и на основе наведения на частичную область, изменить фоновое изображение? – Sai