функция по клику происходит только один раз

0

Я пытаюсь получить карту для увеличения или уменьшения масштаба. Однако после первого щелчка карта не может снова масштабироваться. Я использую jquery animate прямо сейчас, но если есть лучшее решение, я бы тоже хотел это знать.

  var mapWidth = $('.vector-map img').width();

  $('.zoom-in').on('click', function() {
    $('.vector-map img').animate({width: mapWidth + 50}, 'slow');
  });

  $('.zoom-out').on('click', function() {
    $('.vector-map img').animate({width: mapWidth - 50}, 'slow');
  });
  • 0
    Это показывает сообщение об ошибке? Вы должны использовать px?
Теги:

1 ответ

0
Лучший ответ

вы получаете ширину карты только при начальной настройке, а не каждый раз перед тем, как увеличить масштаб, попробуйте:

var mapWidth = $('.vector-map img').width();

  $('.zoom-in').on('click', function() {
    mapWidth = $('.vector-map img').width();
    $('.vector-map img').animate({width: mapWidth + 50}, 'slow');
  });

  $('.zoom-out').on('click', function() {
    mapWidth = $('.vector-map img').width();
    $('.vector-map img').animate({width: mapWidth - 50}, 'slow');
  });
  • 0
    Спасибо, что сделали это!
  • 0
    Если этот ответ помог вам решить вашу проблему, пометьте его как таковой, чтобы другие также могли получить пользу от ответа, спасибо и рады помочь.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню