2
我一直在爲此苦苦掙扎2天,並且閱讀(並嘗試過)比我想象中更多的「黑客」,似乎我沒有做任何事情。IE 11未在SVG地圖上觸發Mouseenter或Mouseleave事件
我有一個美國的SVG地圖,有mouseenter和mouseleave的jQuery事件,在IE 11(和我認爲是9 & 10)忽略的其他瀏覽器中工作正常。
當進入狀態的邊界時,填充應該改變(在FF中嘗試)並且應該顯示一個工具提示(並按照鼠標)。他們再次在其他瀏覽器中正常工作,但IE只是忽略它們。我嘗試了一個鼠標懸停事件來查看它是否工作並確實如此。 IE也正確地工作在點擊功能上,但這兩個只是炸彈。
您可以在http://amgoa.org/State-Gun-Laws看到頁面的JS是http://amgoa.org/scripts/reciprocity.js
這裏是JS的一個片段:
$('.state').mouseenter(function() {
if (!state_selected) {
$(this).css('fill', '#c8b33b');
}
if (strpos($(this).attr('id'), 'R_') === false) {
$('#state_label').text($(this).attr('alt')).show();
$(document).mousemove(function(e) {
$('#state_label').css({
left: e.pageX - 55,
top: e.pageY + 20
});
});
}
else if (state_selected) {
$('#state_label').text('').hide();
}
});
$('.state').mouseleave(function() {
if (!state_selected) {
$('#state_label').text('').css('display', 'none');
$(this).css('fill', '#001a8b');
}
});
任何幫助,將真正的讚賞,因爲這是拿着這個更大的項目網站使用類似的地圖,這個頁面上的失敗並不是世界末日,但另一方面,它的使命至關重要。
我還應該補充說,有一個黑客正在使用,以便地圖在IE中使用帶有填充的父容器正確縮放,然後使用絕對定位'滑動'地圖。 –