У меня есть приложение, созданное с использованием jQuery (и с использованием различных инструментов jQuery-UI).
По какой-то причине мне пришлось портировать его на смартфон / планшет, и я решил использовать для этого jQuery Mobile (чтобы минимизировать количество изменений).
В моем ванильном приложении я на лету создал некоторые элементы страницы в зависимости от взаимодействия с пользователем.
Например, можно создать слайдервот так (p - это объект с кучей параметров):
function createSlider(p){
return $("<div/>",{
"id":p.id,
"class":p.divClass,
}).slider({
"orientation": p.align,
"min":p.constraint.min,
"max":p.constraint.max,
"step":p.step,
"value":p.curVal,
"animate":"normal"
/*and some event handling here, but it doesn't matter*/
});
}
И он создаст красивый слайдер.Теперь это выглядит так:
function createSlider(p){
return $("<range/>",{
"id":p.id,
"class":p.divClass,
"min":p.constraint.min,
"max":p.constraint.max,
"step":p.step,
"value":p.curVal,
});
}
Но так как он создается на лету, все, что делает jQuery Mobile при загрузке страницы, не выполняется на нем.
Есть ли способзаставить эту инициализацию без записи ползунка в html?
Спасибо.
EDIT : я нашел в doc , что это может быть достигнутоиспользование container.trigger("create");
Однако это пока не работает.
EDIT2 : Хорошо, создание было решением.