2012-02-22 4 views
0

Еще раз Мне нужна помощьОбъект не поддерживает этот ресурс в IE

Следующий код прекрасно работает во всех браузерах, кроме IE, IE8, который есть. Проблемой является:

$(function() { 
    $('area').live('mouseover mouseout', function (event) { 
     mapObject.qmap($(this), event); 
    }); 
}); 
}); 

Полный код:

$(document).ready(function() { 
    var mapObject = { 
     qmap: function (area, event) { 
      var ida = area.attr('name'); 
      if (event.type == 'mouseover') { 
       $('.' + ida).show(); 
       $('#' + ida).siblings().each(function() { 
        if ($(this).is(':visible')) { 
         $(this).hide(); 
        } 
       }); 
       $('#' + ida).show(); 
      } 
      else { 
       $('.' + ida).hide(); 
       $('#' + ida).hide(); 
       $('#map-0').hide(); 
      } 
     } 
    }; 
    $(function() { 
     $('area').live('mouseover mouseout', function (event) { 
      mapObject.qmap($(this), event); 
     }); 
    }); 
}); 

Я пытался работать его с другой аналогичной должности без успеха.

Любая помощь приветствуется.

+0

не уверен, что это исправить, но .live является устаревшим в текущих версиях JQuery. использовать .on() вместо –

+0

Какая строка вызывает ошибку? – jrummell

+0

$ ('area'). Live ('mouseover mouseout', function (event) {Извините, не знаете, как вы хотите использовать только .on()? –

ответ

1

Почему не простая версия, как это:

$(function() { 
    function mapObject(e) { 
     var area = $(this); 
     var ida = area.attr('name'); 
     if (e.type == 'mouseover') { 
      $('.' + ida).show(); 
      $('#' + ida).siblings().each(function() { 
       if ($(this).is(':visible')) { 
        $(this).hide(); 
       } 
      }); 
      $('#' + ida).show(); 
     } else { 
      $('.' + ida).hide(); 
      $('#' + ida).hide(); 
      $('#map-0').hide(); 
     } 
    } 
    $(document).on('mouseover mouseout', 'area', mapObject); 
}); 
+0

.on работает, но это не проблема. Я пробовал глобальный mapObject, но это не имело никакого значения, пример того, что я пытаюсь сделать здесь http: // ccq -staging.brightlabs.com.au/page/information_resources/vcrcc-qld-map/ –

+0

@Laurence L: Когда вы объявляете глобальный объект mapObject, вы ** не можете ** использовать 'var', ссылаясь на него внутри функции! Во всяком случае, я полностью изменил свой ответ ... –

+0

Получил работу. Проблема была в конфликте с другим скриптом. Спасибо за т он поможет, и я буду использовать .on() вместо .live с этого момента –

Смежные вопросы