Как лениво загружать скрипты в YUI, которые сопровождают фрагменты html ajax - PullRequest
1 голос
/ 11 мая 2010

У меня есть веб-приложение с вкладками для сообщений и контактов (например, gmail). Каждая вкладка имеет прослушиватель событий Y.on ('click'), который извлекает фрагмент HTML с помощью Y.io () и отображает фрагмент с помощью node.setContent ().

Однако для вкладки контактов также требуется contact.js, чтобы включить кнопку «Редактировать» во фрагменте. Как отложить стоимость загрузки contact.js до тех пор, пока пользователь не нажмет на вкладку Контакты? Как contact.js добавить своего слушателя к кнопке «Редактировать»?

Функция Complete события моей вкладки ('click') может сериализовать Get.script ('contact.js') после Y.io ('фрагмент'). Однако для повышения производительности я бы предпочел загружать скрипт параллельно с загрузкой фрагмента HTML. В этом случае мне потребуется отложить добавление прослушивателя событий на кнопку «Редактировать», пока кнопка «Редактировать» не станет доступной.

Это похоже на обычный шаблон проектирования RIA. Каков наилучший способ реализовать это с помощью YUI? Как мне получить скрипт? Как мне отложить разделы скрипта, пока элементы во фрагменте не будут доступны в DOM?

Ответы [ 2 ]

0 голосов
/ 15 мая 2010

Модуль Caridy's Dispatcher также может справиться с этим и, вероятно, является моим любимым решением этой проблемы. Он был только что освещен в сегодняшние часы работы YUI и выглядит великолепно.

0 голосов
/ 12 мая 2010

По Даву:

"Я бы сделал в обратном вызове ввода-вывода для фрагмента HTML, сразу после вызова setContent, используйте Y.Get для загрузки файла сценария:"

Это вполне разумно.

...