Я пытаюсь убрать все, кроме функциональности ajax из jQuery.Извините за глупый вопрос, но выслушайте меня:
- Я использую веб-работников для вызова ajax, поэтому у меня не может быть материала core.js.
- Другая библиотека, которую я использую, называет jQuery, и я не смог заставить ее работать с библиотекой jQuery.Hive.Pollen.После многих часов устранения неполадок кажется, что библиотека ChemDoodle Web Components работает только с jQuery, и у меня недостаточно опыта, чтобы понять, почему.
- Похоже, довольно просто использовать make-файл для сборки jQuery,но я не уверен, что включить.В make-файле я вынул все, кроме материалов, связанных с ajax:
.
BASE_FILES = ${SRC_DIR}/ajax.js\
${SRC_DIR}/ajax/jsonp.js\
${SRC_DIR}/ajax/script.js\
${SRC_DIR}/ajax/xhr.js\
Однако дальнейшая проверка исходных файлов / ajax показывает методы, вызывающие документ».Так что это означает, что это не будет работать вообще, независимо от того, сколько модулей я удаляю правильно?
Обновление: ошибка # 9889 в jQuery, похоже, указывает на то, что ядро никогда не будет предоставлять функцию ajax, используемую веб-работникамипо крайней мере, в ближайшее время.
Небольшое описание того, что я пытаюсь сделать и почему мне нужно использовать веб-работников для всех, кто заинтересован.Я ставлю распределенное вычислительное приложение, которое выполняет молекулярное моделирование / скрининг из базы данных соединений.Обычный javascript не будет работать, потому что он замедлит страницу, и я хочу, чтобы приложение постоянно запускалось в браузере, вычисляя одну молекулу за другой.Вот схема псевдокода моего желаемого веб-работника
while (true){main();}
main(){
get job from server via ajax
process data//must use web worker
send results to server via ajax
}
Да, я мог бы реализовать свою программу для десериализации строки данных, переданной с главной страницы, и заставить страницу извлекать данные ajax, например,
//page-side javascript
var slave = new Worker()
slave.onMessage(event){
if status = "ready" {
check if data is available- if so, send it to server via ajax
fetch job data from server via ajax
slave.postMessage(job data)
}
}
//worker (slave)
self.onmessage(data) {
//process results
//send back to page
}
Полагаю, это может сработать, но это немного липко и, вероятно, медленнее, чем просто заставлять работника делать все.Согласно Рику Уолдрону, «если у вас была система, которая опрашивала , например, открывала работника, делала запросы xhr в цикле навсегда, при каждом ответе postMessage () возвращала результаты клиенту, тогда выможет принести пользу "
Я предполагаю, что я делаю xhr запросы в цикле навсегда, поэтому это приложение будет полезным.
Я нашел jQuery.Hive.pollen.js, но он не работает смоя другая библиотека, которая делает вызов ajax, который мне нужен.Хотя это отдельный вопрос (на самом деле мой главный вопрос), так что если кому-то интересно, вот ссылка на этот пост :