Tôi có một ứng dụng được xây dựng bằng cách sử dụng jQuery (và sử dụng các công cụ jQuery-UI khác nhau).Có thể tạo phần tử khi đang di chuyển với jQuery Mobile không?
Vì một số lý do, tôi phải chuyển nó sang điện thoại thông minh/máy tính bảng và quyết định sử dụng jQuery Mobile cho điều đó (để giảm thiểu số lượng thay đổi).
Trong ứng dụng vani của tôi, tôi đã tạo một số thành phần của trang khi đang di chuyển, tùy thuộc vào tương tác của người dùng.
Ví dụ một thanh trượt có thể được tạo ra như thế (p là một đối tượng với một loạt các 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*/
});
}
Và nó sẽ tạo ra một thanh trượt tìm kiếm tốt đẹp. Bây giờ nó trông giống như:
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,
});
}
Nhưng khi nó được tạo ra trên bay, tất cả những thứ được thực hiện bởi jQuery Mobile trên trang tải không được thực hiện trên đó.
Có cách nào để buộc khởi tạo mà không cần viết thanh trượt trong html không?
Cảm ơn.
EDIT: Tôi tìm thấy trong doc rằng nó có thể đạt được bằng container.trigger("create");
Tuy nhiên điều này không làm việc được nêu ra.
EDIT2: Ok tạo là giải pháp.
Điều này không phù hợp với tôi. Nếu tôi sử dụng các .trigger ("tạo"), các dropdowns () trông lạ và cư xử bất ngờ. –
Ted