Od kilku godzin uderzam głową w ścianę i nadal nie mogę tego zmusić do działania.jQuery Mobile 1.4.5 - błąd w nawigacji na dynamicznie tworzonej stronie
Robię aplikację internetową, za pomocą szablonu wielostronicowy (mający wielu stron w moim index.html
Cel:.. dynamicznie utworzyć nową stronę, a następnie wyświetlenia tej strony na ekranie
problem: po utworzeniu strony, i stara się zmienić na tej stronie pojawia się następujący błąd: Error: Syntax error, unrecognized expression: :nth-child
w jquery.mobile-1.4.5.js:1850:8
Odpowiedni kod można znaleźć poniżej :
JavaScript
// Add the page to the DOM
$.mobile.pageContainer.append(page);
// Change the page
$.mobile.pageContainer.pagecontainer('change', $('#' + pageId));
HTML
strona została utworzona i dodana do <body>
, więc będę pominąć część HTML.
Wydaje mi się, że strona nie została zarejestrowana w pliku pagecontainer, co oznacza błąd? Rozejrzałem się, ale nie wydaje się, że jest metoda odświeżania strony.
Wszelkie pomysły na rozwiązanie tego problemu?
Edit 1:
Stosując wspomniany kod, aby przejść do innej strony, na przykład strona działa dobrze. Jedyną stroną, która nie działa, jest nowo utworzona strona.
Edytowanie 2:
Wydaje się, że strona tworzę produkuje błąd. Kod używany do nawigacji do strony działał poprawnie.
Kod używam do tworzenia strony:
var page = $('<div/>', {
id: pageId,
'data-role': 'page',
'data-dom-cache': 'false',
});
var content = $('<div/>', {
'data-role': 'content',
});
var courseTabs = $('<div/>', {
'data-role': 'tabs',
});
var courseNavbar = $('<div/>', {
'data-role': 'navbar',
}).append($('<ul/>'));
var courseBtn = $('<a/>', {
href: '#',
class: 'ui-btn',
text: 'testbutton',
});
// Glue the page parts together in the page.
courseTabs.append(courseNavbar);
content.append(courseTabs).append(courseBtn);
page.append(content);
// Add the page to the DOM
$.mobile.pageContainer.append(page);
// Navigate to the page
$.mobile.pageContainer.pagecontainer("change", page, {
transition: "flip"
});
powyższy kod błędu.
Czy próbowałeś '.pagecontainer („zmiana”, strona) ; 'Czy używasz jQuery 3.x? Czy możesz dodać przykład strony dynamicznej? – Omar
@Omar Należy pamiętać, że funkcje pagecontainer działają dla każdej innej strony już istniejącej po zainicjowaniu aplikacji webapp. JQuery, którego używam, znajduje się w pakiecie pobierania jQuery Mobile. Można go znaleźć w następujący sposób: 'jquerymobile.com> pobierz najnowsze> wypakuj pliki'. Następnie w wyodrębnionej mapie: 'jquery.mobile-1.4.5> dema> js> jquery.mobile-1.4.5.js'. Zmieniłem nazwę pliku (na 'jquery.js'). – JiFus
Ile stron posiadasz w indeksie? Czy przechodzisz do innych plików poza plikiem indeksu? – Omar