У меня есть изображение с изображением. Карта изображения разбила изображение на 4 сектора (сверху, вправо, снизу, слева). Каждый раз, когда вы нажимаете сектор (область воображения), изображение вращается, пока этот сектор не будет сверху. я создал небольшой пример, чтобы показать, как я это сделал: HTML5 изображение вращается с imagemap не работает в IE 8. Почему?
Или как полный HTML-документ:
<html>
<head>
<script src="js/jquery-1.9.1.min.js" type="text/javascript"></script>
<script src="js/jQueryRotate.js" type="text/javascript"></script>
<!-- QueryRotate is from: https://jqueryrotate.googlecode.com/files/jQueryRotate.js -->
<script type="text/javascript">
rotated=0;
aktuell=0;
isRotating=false;
jQuery(document).ready(function() {
$("#map area").click(function(event) {
console.log("click");
event.preventDefault(); //bringt auch nichts
if(!isRotating||true) { //true hier raus nehmen damit die einzelnen Abschnitte nur klickbar sind wenn gerade keine Rotation läuft
isRotating=true;
pos=0;
if(aktuell<$(this).attr("pos")) {
pos=$(this).attr("pos");
} else {
pos=parseInt($(this).attr("pos"))+4;
}
rotatedif=360-(Math.abs(aktuell-pos)*90);
rotate=rotated+rotatedif;
aktuell=$(this).attr("pos");
$("#cycle").rotate({animateTo:rotate, duration:(10-(Math.abs(aktuell-pos)))*300, callback: setRotatingOff});
rotated=rotate;
}
});
function setRotatingOff() {
isRotating=false;
}
});
</script>
</head>
<body>
<img src="http://uploads6.wikipaintings.org/images/m-c-escher/circle-limit-iii.jpg!Blog.jpg" id="cycle" border="0" usemap="#map">
<map id="map" name="map">
<area shape="poly" coords="82,73,250,248,429,91," href="#" alt="" title="" pos="0"/>
<area shape="poly" coords="421,85,250,246,417,419," href="#" alt="" title="" pos="1"/>
<area shape="poly" coords="249,247,412,418,75,414," href="#" alt="" title="" pos="2"/>
<area shape="poly" coords="248,247,74,411,82,76," href="#" alt="" title="" pos="3"/>
</map>
</body>
</html>
Это работает в Chrome, Firefox, IE9/10. Но в IE8 изображение поворачивается только при первом щелчке по области. После первого щелчка, если вы щелкните по области, больше никаких кликов нет.
Что я могу сделать для этого в IE8?
Хорошо сделано для поиска решения; Я дал вам +1, потому что это хороший прагматичный подход к решению проблемы без необходимости делать основной переписываемый текст, который я предлагал. Я все еще думаю, что мой ответ будет лучше, если вы начнете с нуля, но если ваше решение будет работать для вас, то это путь. Отлично сработано. Вы должны щелкнуть значок «галочка», чтобы принять ответ, чтобы другие могли видеть, что вопрос был разрешен. – Spudley