【发布时间】:2022-02-01 21:45:58
【问题描述】:
jQuery 中的$("body").load("myUrl") 函数允许将文件的html 内容加载到body 中,这样body 中的html 文件中的所有脚本都会被正确加载并执行。
如何将变量中的 html 内容提供给正文,而不是从文件中加载。例如,考虑一下:
在index.html中:
<script>
window.keeper = null;
function callForm2() {
window.keeper = window.document.body;
$("body").load(
"Form2.html"
);
}
function closeForm2() {
window.document.body = window.keeper;
}
</script>
在callForm2在从文件调用body内容之前,当前body内容存储在一个window.keeper变量中。
在 closeForm2() 中,我想从 window.keeper 变量(旧正文内容)中获取内容并设置为当前正文,在这种情况下,变量的内容不等于之前保存的,无法返回变量的原始内容。
那么如何保存变量的当前正文内容以供下次调用? 这种情况下保存和调用的正确方法是什么?
这是我的代码:(你也可以看https://github.com/yarandish/Challenge2)
【问题讨论】:
-
我真的对你想要完成的事情感到困惑,感觉就像一个“非常糟糕的主意”,没有更多的上下文。为什么不使用
window.keeper = $("body").html();和$("body").html(window.keeper);? -
感谢 Twisty。但是当从保存的 html 中恢复我的身体时,方法、值和脚本不再起作用了...我的新代码解释了我的问题...github.com/yarandish/challenge2edited.git
标签: javascript html jquery dom