[英]JavaScript & HTML - Modifying dynamically created subclasses within a dynamically created class
[英]Javascript redirect to dynamically created HTML
我有一个JavaScript例程,可以动态创建HTML页面,并带有其自己的head和script标签。
如果我获取字符串的内容并将其保存到文件中,然后在浏览器中查看该文件,一切都很好,但是如果我尝试使用document.write(newHTML),它的行为就不会一样。 动态newHTML标头中的javascript非常复杂,我无法在此处添加它。但是请相信我,如果将其保存到文件中,它会很好用,但是如果尝试用它替换当前页面,则不能使用document.write。 我没有考虑的可能有哪些陷阱会导致这种情况? 我是否可能需要首先删除现有标头中的现有脚本标签? 我需要手动重新调用onLoad吗?
同样,当将字符串保存到例如“ sample.html”并浏览至该字符串时,它的效果很好,但是如果我将其设置为var Samp =“ [REAL HTML HERE]”; 然后说document.write(Samp); document.close(); javascript例程无法正确执行。
关于我可能会缺少什么的任何提示?
除了document.write之外,还有其他/更好的方法来动态替换页面的内容吗?
尽管磁盘或服务器上不存在,但仅存在于内存中的字符串中,但我能以某种方式重定向到新页面吗? 我不想将整个文件上传到我的服务器,只是为了再次重新下载以查看它。
如何使用javascript动态地以全新的内容(包括复杂的客户端javascript)替换当前页面的当前内容,包括复杂的客户端javascript,并始终获得与将字符串作为html文件保存到服务器并重定向后完全相同的结果要吗?
如何“重定向”到仅作为客户端字符串存在的HTML文件?
也许eval()函数在这里会有所帮助? 不看代码就很难回答。
你可以这样做:
var win=window.open("") //open new window and write to it
var html = generate_html();
win.document.write(html)
win.document.close();
从未尝试过,但是我认为应该是可能的。 关于使它起作用的一些想法:
也许那就行了。 如果不是,请尝试在写入新HTML之前擦除当前HTML。
此外,查看其他人如何完成此任务可能会有所帮助。 如果我没记错的话,谷歌页面本质上也是带有一堆js的短HTML页面。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.