在我的应用中,我使用Javascript创建了一些元素。例如,我的起始HTML类似于:
<div data-theme="a" data-role="page" id="splash">
<div data-role="content" id="splashContent">
</div>
</div>
然后在Javascript中就像这样
myObject.prototype.addHeader = function(headerText) {
var splashPageContent = jQuery('#splashContent');
this.header = jQuery('<h1>'+headerText+'</h1>');
splashPageContent.append(this.header);
}
到现在为止,一切顺利。在JQM
创建页面后,当我想要更改标题文本时,问题开始出现myObject.prototype.changeHeader = function(headerText) {
this.header.html(headerText);
}
这不起作用。当我在console.log“this.header”时,我确实得到了一个元素,但是这个元素似乎在DOM超空间中浮动(例如它没有父节点)。当我在页面上选择可见的标题时(使用Firebug),我获得的元素与console.log中显示的元素不同。
这怎么可能? JQM是否会生成标题的克隆?如何更改克隆标题的文本?
答案 0 :(得分:0)
通过在 pagecreate事件之后创建元素来修复它。