javascript - 附加到 InnerHtml 而不闪烁其余内容

标签 javascript html ajax

我有一个带有一些格式化图像的 div 元素。根据用户请求,我在没有回发的情况下异步加载其他图像,并使用 JavaScript 将结果(新图像的格式化 HTML)附加到 div 元素:

function onRequestComplete(result) {
        var images = document.getElementById('images');
        images.InnerHtml += result;
    }

一切都很好,除了面板中的图像在附加 HTML 之后加载之前闪烁的部分。据我了解,面板是重建的,而不仅仅是在其底部附加了新的 HTML。所以这不是 web 2.0 行为。

不轻弹怎么办?提前致谢。

最佳答案

使用dom方法添加它们:

var div = document.createElement('div');
div.innerHTML= result;
document.getElementById('images').appendChild(div);

或者如果你真的想以正确的方式做到这一点,为每个图像创建一个 dom 元素,然后附加它们。这也有预加载图像的好处。

或者只使用 jQuery。 ;)

关于javascript - 附加到 InnerHtml 而不闪烁其余内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3039723/

相关文章:

javascript - Google Web 字体在 OSX Safari 中不显示,但在 Firefox、Chrome、Opera(适用于 OSX、Windows 和 Linux)和 Internet Explorer 中显示

javascript - 使用 jquery 调出一个 div 以单击并悬停

html - 当 Bootstrap 响应时,我如何更改 Navbar Position

php - 使用 AJAX 提交表单不会 POST 到数据库

java - 如何将数组从 Java 传递到 Ajax

javascript - 为什么 JSLint 提示未定义/隐含的全局变量?

javascript - 使用 Requirejs 动态加载语言环境文件

javascript - 在 CK Editor 中访问选项卡数据

javascript - 基本的 Angular 路由问题

javascript - 使用 ajax 随机化 Promise