【问题标题】:Ajax enable browser loading barAjax 启用浏览器加载栏
【发布时间】:2015-03-16 23:32:52
【问题描述】:

好的,以前也有人问过类似的问题,但我会尽量说清楚。

我正在开发一个通过 AJAX 加载内部页面的 web 应用程序。当我在我的电脑上时,我想使用浏览器的正常加载/进度栏(地址栏中的那个,而不是进度 html 元素)向用户显示通过 ajax 将页面加载到我的 web 应用程序中的进度。如何触发此功能?甚至可能吗?我知道如何做一个自定义进度条,当它不在具有默认地址和加载栏的浏览器中时,我计划将其用于 webapp。

【问题讨论】:

    标签: javascript ajax web-applications


    【解决方案1】:

    不久前我有一个类似的问题并得出结论,没有办法告诉浏览器正在加载数据的实际进度,但是有一种方法可以触发加载指示器正在使用 Ajax 在后台加载图标或数据等内容。

    this postthis page 是一些可能对我有帮助的链接。

    我希望这有助于并回答您的问题!

    利亚姆

    【讨论】:

    • 我看到了那个帖子,但它使用 iframe...我想使用 ajax 而不是 iframe。
    • 另外,它在 Safari 中似乎没有任何作用
    【解决方案2】:

    是的,这是可能的。你可以做这样的事情。 这是您的 Javascript:

    var xmlhttp;                                                                                    
    if (window.XMLHttpRequest)
    {// code for IE7+, Firefox, Chrome, Opera, Safari
        xmlhttp=new XMLHttpRequest();
    }
    else
    {// code for IE6, IE5
        xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
    }
        xmlhttp.onreadystatechange=function(){
        document.getElementById("progress").value = xmlhttp.readyState;
    }
    

    这里是 HTML:

     <html>
      <body>
        <progress id="progress" value="0" max="4"></progress>
      </body>
      </html>
    

    我希望这能回答你的问题。

    【讨论】:

    • ...如何使用浏览器的加载栏?我没有说我想使用进度元素。我想触发浏览器的默认加载栏(地址栏中的那个)。不是页面上的元素。
    猜你喜欢
    • 2011-04-23
    • 1970-01-01
    • 1970-01-01
    • 2013-04-30
    • 2015-12-31
    • 2020-01-25
    • 2023-03-26
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多