【问题标题】:Javascript iframe loading time function for many urls许多网址的Javascript iframe加载时间功能
【发布时间】:2013-04-08 11:26:08
【问题描述】:

有一个非常简单的函数来检查 iframe 的加载时间:

function loadTime() {
        var beforeLoad = (new Date()).getTime();        
        $('#loading_iframe').one('load', function () {
            var afterLoad = (new Date()).getTime();
            var result = (afterLoad - beforeLoad) / 1000;
            $("#loadingtime").html(result + " sec");
        }); 
    }   

我像这样加载我的框架(其中 $url = 一些链接)):

<iframe style="visibility:hidden;display:none" id="loading_iframe" src="<?php echo $url;?>"></iframe>

之后我将结果放入一个 div:

<div id="loadingtime"></div>

这对于单个 url 非常有效,我希望它适用于一组 url。这是我想要的结构(这可能吗?):

foreach ($url_array as $i)
  iframe gets loaded with url
    javascript that gets the loadtime of the url
      passint the javascript value to php varriable
        write the php varriable to a database
close foreach and begin the next loop

【问题讨论】:

    标签: php javascript


    【解决方案1】:

    是的,你想做的事完全有可能。

    如果您为 IFrame 使用 ID,则应考虑到这些 ID 对于每个 iframe 应该是唯一的,否则当您创建具有相同 ID 的新 iframe 时,您将失去对旧 iframe 的引用。

    您还可以创建一个全局 load 事件侦听器和一个使用 URL 作为唯一键的对象,以将数据映射到每个 IFrame。

    为此,使用 URL 键和对象创建一个对象作为存储开始时间和负载处理程序的值。每次触发全局 load 侦听器时,您检查目标是否是 IFrame,如果是,则使用其 src 在该地图中查找,获取开始时间,计算可以存储在该对象中的持续时间,也是。

    祝你好运!

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-09-20
      • 2011-02-16
      相关资源
      最近更新 更多