远程弹出iq问题-jquery

远程弹出iq问题-jquery,jquery,html,Jquery,Html,简短问题: 我想为我的网站制作远程弹出窗口 这些实际上是附加了css样式表的div元素。例如: <div id="popupDiv"> <link rel="stylesheet" type="text/css" ...> <script src="..."/> <div id="popupMessageDiv"> bla bla bla</div> </div> 发生了什么事? 有时,在dom之后会加

简短问题: 我想为我的网站制作远程弹出窗口

这些实际上是附加了css样式表的div元素。例如:

<div id="popupDiv">
   <link rel="stylesheet" type="text/css"  ...>
   <script src="..."/>
   <div id="popupMessageDiv"> bla bla bla</div>
</div>
发生了什么事?

有时,在dom之后会加载css,这对用户体验来说非常烦人(特别是对于速度较慢的浏览器ie)

我如何才能确保我的弹出窗口显示顺畅,这意味着确保在显示div之前已经加载了弹出css

现在有一种方法可以将样式属性放到弹出窗口中的所有div元素中。这需要几年的时间:)


提前谢谢你

将css代码添加到主css文件中,并将其加载到调用页面上,而不是将其加载到弹出窗口中。css将已经加载,这将使您的弹出窗口更加平滑

您可能希望对在弹出窗口中加载的脚本执行此操作,因为它们也可能加载缓慢

如果仍然需要按顺序加载所有三个组件,请一次加载一个组件,以确保它们按正确的顺序加载,即

$.load("/ajax/show-publish-test-popup-css", function(css) 
    {
    $(css).appendTo("body");

        $.load("/ajax/show-publish-test-popup-js", function(js) {
            $(js).appendTo("body");                 

        $.get("/ajax/show-publish-test-popup",
            {
                "title": $("#title").val(),
                "description": $("#description").val(),
                "questionsCount" : visibleQuestionsCount,
                "passingMark" : $('#passingMarkHI').val(),
                "categoryId":  $('#categoryIdHI').val()
                }, function(data) { $(data).appendTo("body"); }
        );
        });
});

如果css和js包含需要知道要正确加载的某些内容,那么它们可以是GET而不是load,但这给了您基本的想法。

可能希望显示您的jquery。您使用的是document ready吗?我根据您的请求附加了一块jquery(没错:),但远程弹出窗口背后的原因是为了加快页面加载。例如,显示了一些非常罕见的弹出窗口,例如当用户单击发送消息按钮时。想象一下,有时一个页面上可能会出现3或4种类型的远程弹出窗口->导致大量样式、函数和dom元素的存在
$.load("/ajax/show-publish-test-popup-css", function(css) 
    {
    $(css).appendTo("body");

        $.load("/ajax/show-publish-test-popup-js", function(js) {
            $(js).appendTo("body");                 

        $.get("/ajax/show-publish-test-popup",
            {
                "title": $("#title").val(),
                "description": $("#description").val(),
                "questionsCount" : visibleQuestionsCount,
                "passingMark" : $('#passingMarkHI').val(),
                "categoryId":  $('#categoryIdHI').val()
                }, function(data) { $(data).appendTo("body"); }
        );
        });
});