2010-12-28 2 views
1

Я использую плагин jQuery Zoomable для плагинов для сайта WordPress с двумя типами карт и легенд. В режиме обслуживания прямо сейчас, поскольку он пока еще не открыт для публики. Мне нравится его масштабирование и функциональность. Я даже добавил триггер к легенде, чтобы сделать ссылки в легендарном триггере увеличения и выключения на картах, которые работают с этим дополнительным кодом:Функция масштабирования jQuery завершается с ошибкой после нескольких приближений масштабирования

jQuery (document) .ready (function ($) { $ ('# (функция)() { $ ('# area-one'). click(); }); });

Но у меня были проблемы. После нескольких масштабирования и выходов иногда масштабирование больше не работает, пока я не обновляю страницу или не жду несколько минут. Когда я нажимаю кнопку уменьшения масштаба в легенде, я больше не могу нажимать на масштабируемые поля на карте, так как она как-то не знает, что я уменьшил масштаб. Это проблема. Но как это решить?

Ссылка на все файлы кода здесь: http://javascript.pastebin.com/qpEHcDts (можно добавить только одну ссылку)

+0

Рекомендуется предоставить ВСЕ соответствующий код. Возможно, я ошибаюсь, но 2x .click без кода в нем не должен быть бесполезным. – Mantar

+0

Добавлена ​​ссылка на фрагмент со ссылками на все необходимые фрагменты/код и уточнила, что я тоже. Я смог вставить только одну ссылку. NB Снипеты истекают через один день – rhand

ответ

0

С помощью разработчика JavaScript я сумел оптимизировать код, основанный на плагин JQuery, как здесь: http://www.gethifi.com/blog/a-jquery-plugin-for-zoomable-interactive-maps несколько. Вот код в legend.js, используемый, чтобы сделать определенные области доступными для кликов и улучшить масштабируемость без задержек.

jQuery(document).ready(function ($) { 
    $('#1-coast-button').click(function() { 
    $('#1-coast').click(); 
     }); 
    $('#island-1-button').click(function() { 
    $('#island-1').click(); 
    }); 
    $('#water-button').click(function() { 
    $('#water').click(); 
    }); 
    $('#2-coast-button').click(function() { 
    $('#2-coast').click(); 
    }); 
    }); 

Основной код, загруженный на одной самой странице карты довольно велик, но вот один из всплывающих окон, загруженных с помощью кода на странице карт один .html:

<a href="javascript:void(0)" id="dean-smith" class="bullet" rel="441-342">&nbsp;</a> 
    <div class="popup" id="dean-smith-box"> 
     <h3>Royal X Resort</h3> 
     <div class="popupcontent"> 
      <p>Text</p> 
     </div> 
     <a class="close" href="javascript:void(0)"></a> 
    </div> 

Карта загружает лучше теперь и клиент довольно доволен.

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