我幾個小時都撞到了牆上,現在依然無法使它工作。jQuery Mobile 1.4.5 - 導航到動態創建頁面時出錯
我正在做一個Web應用程序,使用多頁面模板(有我index.html
多頁
目的:。動態地創建一個新的頁面,然後在屏幕上顯示此頁
問題:創建頁面,並試圖改變這一頁,我得到以下錯誤後:Error: Syntax error, unrecognized expression: :nth-child
在jquery.mobile-1.4.5.js:1850:8
相關的代碼可以在下面找到:
的JavaScript
// Add the page to the DOM
$.mobile.pageContainer.append(page);
// Change the page
$.mobile.pageContainer.pagecontainer('change', $('#' + pageId));
HTML
的頁面已經被創建並添加到<body>
,所以我會忽略HTML部分。
我覺得這個頁面可能沒有註冊到pagecontainer中,這會給出錯誤?我看了,但似乎沒有一個pagecontainer刷新方法。
有關如何解決此問題的任何想法?
編輯1:
使用上述代碼導航到另一個頁面,例如主頁工作得很好。唯一不工作的頁面是新創建的頁面。
編輯2:
看來我創建的頁面產生錯誤。用於導航到該頁面的代碼正常工作。
我用它來創建頁面的代碼:
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"
});
以上代碼生成錯誤。
你試過'.pagecontainer(「變」,頁) ;'你在使用jQuery 3.x嗎?你可以添加一個動態頁面的例子嗎? – Omar
@Omar請注意,pagecontainer函數適用於webapp初始化後的其他頁面。我使用的jQuery包含在jQuery Mobile的下載包中。它可以像這樣找到:'jquerymobile.com>下載最新的>提取文件'。在提取的地圖中:jquery.mobile-1.4.5> demos> js> jquery.mobile-1.4.5.js'。我儘管重命名了文件(到'jquery.js')。 – JiFus
索引內有多少頁?你是否瀏覽索引文件以外的其他文件? – Omar