У меня проблема при открытии панели jquery-mobile - хорошо, она прекрасно открывается при проведении пальцем / мышью, НО, кажется, теряется CSS. Я сталкивался с этим раньше и использовал такие функции, как ..
$(#menu).trigger("create");
Но если я сделаю это, список, содержащийся на панели, полностью исчезнет.
если я вместо этого использую этот вызов после добавления, я получаю значки, но не более
$('ul').listview();
В чем может быть причина?
JS-файл
var menu = {
menu_: null,
menuIsLoaded: false,
loadMenu: function(){
var me = this;
$.ajax({
url: "html/menu.html",
success: function(data){
me.menu_ = $(data);
me.menu_.appendTo("body");
me.menuIsLoaded = true;
console.log("menuloaded: " + me.menuIsLoaded);
me.bindPanel();
}
});
},
bindPanel: function() {
var me = this;
var myMenu = me.menu_;
$('body').on('swiperight', function () {
console.log("open panel1");
if(me.menuIsLoaded) {
$(myMenu).panel().panel("open");
//$('ul').listview();
//$(myMenu).trigger("create");
}
});
$('body').on('swipeleft', function () {
$(menu).panel().panel("close");
console.log("close panel1");
});
}
}
html-файл (панель)
<div id="panelcontent">
<div data-role = "panel" id = "panel1" data-display="overlay" data- theme="b">
This is Panel Header
<div class="panel-content">
<ul data-role="listview id="mylistview">
<li data-icon="shop"><a href="page1.html">Page2</a></li>
<li data-icon="tag"><a href="#campaign-list">Offers</a></li>
<li data-icon="eye"><a href="#info-exhibition-map">area</a></li>
<li data-role="list-divider"></li>
<li data-icon="calendar"><a href="#info-program">Program</a></li>
<li data-icon="calendar"><a href="#info-seminar">Seminars</a></li>
<li data-icon="grid"><a href="#info-parking">Parking</a></li>
<li data-icon="bars"><a href="#info-food">Beverage</a></li>
<li data-icon="bars"><a href="#info-simulator">History</a></li>
<li data-icon="user"><a href="#info-service">Callcenter</a></li>
<li data-icon="location"><a href="#info-map">Vacation</a></li>
<li data-role="list-divider"></li>
<li data-icon="delete"><a href="javascript:;" data-rel="close">Hide menu</a></li>
</ul>
</div>
image1 (без css)
image2 (некоторые css или хотя бы значки) вызывая listview ()
image3 (пустая панель) вызов $ (# menu) .trigger ("create");