Я заменил традиционные элементы формы выбора / опции на изящное маленькое всплывающее окно при нажатии на изображение запуска. Страница предназначена для целей бухгалтерского учета, поэтому следует ожидать нескольких позиций. Я написал javascript, который будет динамически генерировать новые элементы выбора / выбора позиции. Когда страница загружается, загружается начальный набор вариантов, и пользователь может щелкнуть по ним, получить всплывающее окно с некоторыми вариантами выбора, выбрать один, а затем окно закрывается. Переход к следующему выбору и так далее и тому подобное. Я добавил livequery в свой код для этих динамических элементов. Однако ... livequery ("click" ...), похоже, срабатывает независимо от того, где пользователь нажимает на странице. Очень расстраивает.
Я читал здесь о том, как здорово работает "live ()" в jQuery 1.3, но я не могу полностью обновить его до jquery 1.3, потому что пользовательский файл JS зависит от 1.2, поэтому использование live () выходит за рамки вопрос, однако я вызвал плагин livequery (), и мне действительно нужно понять, правильно ли я его использую.
Я выложу частичный код. Просто слишком много, чтобы опубликовать все это.
По сути, я ищу div, начинающиеся с "bubble", а затем числа после. Затем запустите мероприятие на каждом из них. Только bubble1 является статическим, 2 и выше являются динамическими. Мне не хватает всего использования livequery?
>$jb('div[id^="bubble"]').each(function () {
> var divid = $jb('div[id^="bubble"]').filter(":first").attr("id");
>var pref = "bubble";
>var i = divid.substring((pref.length));
>var trigger = $jb('#trigger' + i, this);
>var popup = $jb('#pop'+ i, this).css('opacity', 0);
>var selectedoption = $jb('selectedOption' + i, this);
>var selectedtext = $jb('selectedOptionText' + i, this);
>$jb([trigger.get(0), popup.get(0)]).livequery("click",
> function () {
>//alert(i);
// code removed for brevity (just the contents of the popups)
>});