Jquery mobile,从javascript动态添加面板
我有一个html页面,其中有许多jquery移动面板。现在我需要从javascript动态创建新面板。所有面板都在一个具有特定id的div中。我使用getElementById而不是innerHtml在运行时附加新div 问题是,在单击打开jquery div的链接之前,jquery div不应该出现。但是,当我从Javascript中插入jquery div时,它显示为一个普通div。jquery移动脚本似乎无法识别我在运行时添加的新div。 有人能帮我吗 非常感谢 下面是一个简单的问题示例:Jquery mobile,从javascript动态添加面板,javascript,jquery-mobile,Javascript,Jquery Mobile,我有一个html页面,其中有许多jquery移动面板。现在我需要从javascript动态创建新面板。所有面板都在一个具有特定id的div中。我使用getElementById而不是innerHtml在运行时附加新div 问题是,在单击打开jquery div的链接之前,jquery div不应该出现。但是,当我从Javascript中插入jquery div时,它显示为一个普通div。jquery移动脚本似乎无法识别我在运行时添加的新div。 有人能帮我吗 非常感谢 下面是一个简单的问题示例:
面板标题
您可以通过单击面板外部、按Esc键或通过滑动来关闭面板
//现在,当一个事件被验证后,我将进入新的jquery移动面板
e、 addEventListener(“单击”,函数(){
document.getElementById(“面板”).innerHTML+='
面板标题
正文
';
},假);
动态添加面板后,需要告诉jQuery Mobile对其进行初始化。一种方法是在panels容器上调用enhanceWithin():
$("#btnAdd").on("click", function () {
var panel = '<div data-role="panel" id="myPanel2"><h2>Panel Header</h2><p>Text</p></div>';
$("#panels").append(panel).enhanceWithin();
});
$(“#btnAdd”)。在(“单击”,函数(){
变量面板='panel HeaderText';
$(“#面板”).append(面板).enhanceWithin();
});
另一种方法是直接在新添加的panel div上调用panel()小部件初始值设定项
$("#btnAdd").on("click", function () {
var panel = '<div data-role="panel" id="myPanel2"><h2>Panel Header</h2><p>Text</p></div>';
$("#panels").append(panel);
$("#myPanel2").panel();
});
$(“#btnAdd”)。在(“单击”,函数(){
变量面板='panel HeaderText';
$(“面板”)。追加(面板);
$(“#myPanel2”).panel();
});
你需要这样做。另外,你能解释一下问题是什么吗?这不容易理解。