Mam app zbudowany przy użyciu jQuery (i przy użyciu różnych narzędzi jQuery-UI).Czy można utworzyć element w locie za pomocą jQuery Mobile?
Z jakiegoś powodu muszę przenieść go na smartfony/tablety i postanowiłem użyć do tego celu jQuery Mobile (w celu zminimalizowania liczby zmian).
W mojej aplikacji na wanilię stworzyłem elementy strony w locie, w zależności od interakcji użytkownika.
Na przykład można utworzyć suwak tak (p jest obiektem z wieloma params):
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*/
});
}
I będzie produkować piękny suwak patrząc. Teraz wygląda na to:
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,
});
}
Ale jak jest tworzony na bieżąco, wszystkie rzeczy zrobione przez jQuery Mobile w ładowania strony nie robi na nim.
Czy istnieje sposób na wymuszenie tej inicjalizacji bez pisania suwaka w html?
Dzięki.
EDIT: Znalazłem w doc, że może to być osiągnięte za pomocą container.trigger("create");
Jednak to jeszcze nie działa.
EDIT2: Rozwiązaniem było OK create.
To nie działa dla mnie. Jeśli użyję .trigger ("create"), rozwijane menu () wygląda dziwnie i zachowuje się nieoczekiwanie. –
Ted