JQueryMobile:当data-role="page"'s JS生成的内容被创建/删除
JQueryMobile: When data-role="page" 's JS generated content is created/remove?
给定一个一个html多页应用程序,在我的每个页面中,我计划JS注入长html代码和动画,这可能很重。HTML代码,如:
<div data-role="page" id="page11">
...
</div>
<div data-role="page" id="page12">
<h2 id="anchor12">Title: Page 12</h2>
<script>myScript12() // inject complex content to #anchor12</script>
</div>
1。我的myScript12()
什么时候被激活?(当我打开。html文件或者当我点击并打开#page12 ?
2。当我离开#page12进入另一个页面时,JS生成的内容会发生什么?
编辑:我不想把我所有的20个重页面加载到。html加载。
解决方案: +1是Gajotres (JQM: document ready vs page events)的详细解释,下面是我目前的解决方案。只有当给定的data-role="page"显示时才运行js…
使用以下JQM HTML/JS:
<div data-role="page" id="page12">
<h2 id="anchor12">Title: Page 12</h2>
<script>
$('#page12').on('pageinit') { //only run when page is displayed
myScript12() // inject complex content to #anchor12
});</script>
</div>
-
该脚本将在页面加载到
DOM
时立即执行。这就是页面事件存在的原因。基本上,如果你想为代码执行计时,可以在页面事件中进行。如果你想找到更多关于页面事件的阅读我的其他答案:jQuery Mobile: document ready vs page events. -
当你离开你的页面,内容仍然在那里加载到
DOM
。如果你想防止大的DOM
内容,你可以使用pagehide事件来清除以前的页面内容。还有一个属性可以放在data-role="page"div中,以防止DOM
兑现。属性名是data-dom-cache="true"
,你可以在这里找到更多关于它的信息
相关文章:
- 可以't删除“;C: fakepath "使用javascript替换和regex
- 如何删除“"使用javascript从字符串中提取字符
- 删除"在JavaScript控制台中打印数组时
- tinyMCE删除背景图像:“"类似于magento的url的内容
- 是否有任何方法可以去除“"打印时从阵列中删除
- javascript删除"被禁用”;属性
- "/"当onclick事件时从URL中删除
- "搜索并销毁“;迭代不会'不要一次删除所有项目
- 如何删除“"使用jQuery从十进制数字中提取
- 用于删除两个“”之间的字符的正则表达式是什么/"在javascript中
- 如何删除所有<李>具有innerHTML==“&";
- 带有换行符的JSP+HTML-将其作为字符串获取,并删除"新线”;
- 删除字符“”$"从产品的角度来看
- 如何删除扩展属性“;jquery123456"来自元素
- 如何删除"在javascript中从我的Json
- 使用laravel从json中删除“quot”
- 如何删除“#"从按下的链接,并提醒href的值
- 删除值=";评论"只要从输入框中单击它
- jQuery删除""之后的字符串的一部分#"并且去除"#""
- 我怎样才能摆脱和删除quot;从rails提供的数据到javascript