Javascript 显示:当html页面通过ajax加载到div中时,是否不破坏格式?
我有一个div,它使用Javascript 显示:当html页面通过ajax加载到div中时,是否不破坏格式?,javascript,css,Javascript,Css,我有一个div,它使用display:none隐藏元素,而不破坏任何页面格式/布局。但是,如果我使用ajax获得另一个html页面,并在document.ready()事件期间使用jQuery设置该div的innerhtml,则格式会中断 请注意,如果注释掉****内的代码,格式不会中断。 Firebug没有显示任何JS错误 以下是ajax和设置内容代码: var htmlStuff; $.ajax({ url: "temp.html",
display:none
隐藏元素,而不破坏任何页面格式/布局。但是,如果我使用ajax获得另一个html页面,并在document.ready()事件期间使用jQuery设置该div的innerhtml,则格式会中断
请注意,如果注释掉****内的代码,格式不会中断。
Firebug没有显示任何JS错误
以下是ajax和设置内容代码:
var htmlStuff;
$.ajax({
url: "temp.html",
cache: false,
success: function(html){
htmlStuff= html;
**$('#myDiv').html(htmlStuff);**
}
});
这是分区:
<div id = "myDiv" style="display:none"></div>
如果要从显示设置div:none代码>然后将其更改为块值,该块值将打断布局,显示为显示:无代码>不会在html布局中占用空间。看起来您正在获取“temp.html”文件的完整内容并将其放入div中
如果“temp.html”包含完整的html文档(包括html
、head
和body
元素),这将使当前页面上的html无效,并可能导致您看到的问题
在javascript中,您可能需要搜索“temp.html”的主体,只插入主体的内容,以确保排除
和
标记。如何做到这一点?给我们看一些代码。@NicklasNygren我已经编辑了我的帖子,加入了一些代码。你看到scott的答案了吗?可能是这样吗?也就是说,temp.html是一个完整的html页面吗?不,我没有将其更改为block或任何东西-它保持不变。除非你说的是有关div中某个div的块设置。