我正在使用Fancybox v.1.3.4在此页面上的iframe中显示视频.Fancybox和视频显示正常,但问题是,自从添加代码后,我在IE7/8中加载网站时遇到了一个巨大的停顿,类似于此问题 - 页面加载,然后UI冻结好的4-5秒,阻止我点击链接,滚动或其他任何东西.这是我在页面顶部链接的内容<head>
.包含jQuery UI包(包括UI 1.8.11,UI小部件,UI鼠标,UI位置和带有缩放的UI效果)主要用于启用尚未加载到网站上但尚未加载的其他效果.
<script type="text/javascript" src="/lib/jquery/jquery-latest.min.js"></script>
<script type="text/javascript" src="/lib/jquery/jquery-ui.custom.min.js"></script>
<script type="text/javascript" src="/lib/fancybox/jquery.fancybox-1.3.4.pack.js"></script>
<link rel="stylesheet" href="/lib/fancybox/jquery.fancybox-1.3.4.css" />
Run Code Online (Sandbox Code Playgroud)
我在页面上使用了YSlow,建议将脚本调用移到底部,但这并没有解决IE中的暂停问题.然后我在使用IE8的开发人员工具加载期间查看了HTML DOM,并且当加载Fancybox的代码时,似乎发生了暂停; 在暂停后立即,以下div显示在树的底部:
<div id="fancybox-tmp"/>
<div id="fancybox-loading" (jQuery attribute here)>
...
</div>
<div id="fancybox-overlay"/>
<div class="fancybox-ie" id="fancybox-wrap">
...
</div>
Run Code Online (Sandbox Code Playgroud)
这个,以及在我将fancybox添加到页面后出现问题的事实,这就是为什么我认为这是Fancybox的性能问题,但到目前为止我没有尝试过(没有关闭fancybox代码)似乎有产生了影响.我尝试过的最新事情是删除对jQuery.ready()的引用,以防它可能帮助它更早地加载fancybox代码并因此改变暂停的时间,但它没有做太多好处.不是我真的期望它,但我对jQuery和Fancybox有点新意,此时我正在抓住稻草.
我现在想的是,它可能是Fancybox与页面上其他一个脚本之间的冲突,例如谷歌分析,但我不确定如何判断是否是这种情况,或者如果该怎么做最终成为它.那些了解这些脚本的人的想法是什么?提前致谢.
有没有办法获得 xmlHttpRequest 加载时间?
否则我必须设置一个函数来计算它,所以呢?
我有一个有功能调用的网站,在工作时间后,在我的时区切换到"夜间模式".
php文件具有夜间模式的div以及白天模式的一个文件中的日期模式,div具有"day-"前缀,而night模式具有"night-"前缀.
并且css具有每个div背景图像的所有URL.
现在当网站处于'日模式'时使用"day-" div是"night-" divs背景图片仍然加载,反之亦然? ---即它们会影响页面加载次数吗?
(补充信息----这不是javascript它唯一的php所以只有在关闭时间之前打开页面并在关闭时间后刷新它才会改变.)
编辑 - 添加代码,以便对其他人更有用
继承人PHP
<?php
date_default_timezone_set('Asia/Tbilisi');
$c_time = mktime();
$open = strtotime('Today 8am');
$close = strtotime('Today 8pm');
?>
<?php if ($c_time > $open && $c_time < $close): ?> <!-- BEGIN DAY MODE -->
<div id="animated-head-link">
<a href="<?php echo esc_url( home_url( '/' ) ); ?>" title="Return to <?php echo esc_attr( get_bloginfo( 'name', 'display' ) ); ?>' Homepage." rel="home">
<div id="sky" class="stage"> </div><!-- …
Run Code Online (Sandbox Code Playgroud) 我正在使用新文物,对于我的网站,主页平均需要8秒才能满载.网络请求速度很快,但是dom和页面呈现的速度很慢.我有谷歌+,脸书,推特分享按钮和bxslider.
当我在浏览器中运行它需要2-4秒.我不太熟悉如何优化前端性能.我很震惊它花了很长时间.
如果有人能给我提示加快速度; 那太好了.
我试图弄清楚如何使用谷歌chrome profiler工具,但它说80%闲置.
我相信很多人都注意到,当你有一个大型应用程序(即需要几MB的DLL)时,它第二次加载的速度比第一次快得多.如果您在应用程序中读取大文件,也会发生同样的情况.第一次播放后它的读取速度要快得多.
这有什么影响?我想这是硬盘驱动器缓存,或者操作系统增加了一些自己的内存缓存.
您使用什么技术来加速大型应用程序和文件的加载时间?
提前致谢
注意:问题涉及Windows
补充:影响操作系统缓存大小的因素是什么?在某些应用程序中,文件在一分钟左右后再次缓慢加载,因此缓存填写一分钟?
有很多人抱怨SWF上的加载时间很慢,但这样看起来很好.
我想在SWFObject javascript中添加一个加载计时器来计算加载SWF所需的时间,然后将其发送给我们(我将通过AJAX执行此操作).
我已经研究了使用SWFObject回调的可能性,它每10毫秒启动一个计时器,然后一旦成功就会停止.但是,看看这个,如果嵌入成功,而不是加载,这只是一个开关.
function loadSWF(playURL){
swfobject.embedSWF(playURL, "playdiv", "170", "90", "9.0.0", "expressInstall.swf", color:face00}, {wmode:"opaque",allowfullscreen:"true",allowScriptAccess:"always"}, '', function(e) {
var loadTimer = window.setInterval(function() {
if(e.success) {
milSeconds = milSeconds+10;
clearInterval(loadTimer); alert('TIME ' + milSeconds);
} else {
milSeconds = milSeconds+10;
}
},10);
});
}
Run Code Online (Sandbox Code Playgroud)
这就是我现在所拥有的.Obv不会做我们需要的.
还有其他人可以效仿吗?
我有一个约32kb的javascript源代码文件,并在模块中安排了javascript代码.我想知道如果我将每个模块放入一个单独的文件中会增加页面加载时间,因为管理超过2000行的当前代码是相当繁琐的,有时会令人困惑
对于我的项目,我使用Ionic
了Angular
. 当我的 ionic 项目第一次渲染时,加载时间太慢了。出现此问题是因为当项目first
呈现时,加载所有js
文件需要时间。那么我如何更快地加载“js”文件,这将提高我的离子项目的加载性能。如果有人知道加载时间慢得多的更好原因,请告诉我原因和解决方案。
我制作了一个加载大量计算机信息的程序.在Form_Load事件中,我初始化了3(该数字将增长)信息面板.有一堆单位信息似乎使程序加载相当慢.我试图通过从WMI切换到使用Native调用来加快速度,这帮助了很多.很快,我也将发布网络信息.我曾经加载那个面板,但我暂时禁用了它,直到我解决了其他面板中的错误.因此,虽然我学习如何使用一个单独的线程来更新我的电池信息,我想,我也许可以在我单位信息面板创建单独的线程,以便它可能会加载速度更快.我不知道我的任何信息会导致并发问题,但我可以解决这个问题.
我想从小开始,所以如果我改变这个
private void Form1_Load(object sender, EventArgs e)
{
unitInformationPanel1.PopulateUnitInformation();
batteryInformationPanel1.InitializeBatteries();
magStripeReaderPanel1.SetupPointOfSale();
}
Run Code Online (Sandbox Code Playgroud)
对此
private void Form1_Load(object sender, EventArgs e)
{
Thread infoThread = new Thread(new ThreadStart(unitInformationPanel1.PopulateUnitInformation));
infoThread.Start();
batteryInformationPanel1.InitializeBatteries();
magStripeReaderPanel1.SetupPointOfSale();
}
Run Code Online (Sandbox Code Playgroud)
当填充单位信息完成时,信息线程会被终止吗?或者将该线程创建移动到PopulateUnitInformation中会更好吗?这是它的样子.
public void PopulateUnitInformation()
{
unitModelLabel.Text = Properties.Settings.Default.UnitModelString;
serialNumberLabel.Text = Properties.Settings.Default.UnitSerialString;
biosVersionLabel.Text = UnitBios.GetBiosNumber();
osLabel.Text = OS.getOSString();
cpuLabel.Text = UnitCpu.GetCpuInfo();
var hdd = HddInfo.GetHddInfo();
diskNameLabel.Text = hdd.Name;
diskCapacityLabel.Text = hdd.Capacity;
diskFirmwareLabel.Text = hdd.Firmware;
memoryLabel.Text = MemoryInformation.GetTotalMemory();
NetworkPresenceInformation.GetAdapatersPresent();
biometricLabel.Text = BiometricInformation.IsPresent ? "Present" : "Not Present";
var networkAdaptersPresense = NetworkPresenceInformation.GetAdapatersPresent(); …
Run Code Online (Sandbox Code Playgroud) 我知道之前曾有人问过这个问题,但我找不到确切的答案。
过度使用echo语句是否会减慢最终用户的加载时间?
通过在文件中包含更多echo语句,文件大小会增加,因此我知道这将是一个因素。如果我错了纠正我。
经过一些研究,我知道使用php的ob_start()函数以及提高Apache的SendBufferSize可以减少加载时间,但是据我了解,通过允许php更快地完成/退出,这更多的是减少了php执行时间。 Apache即将退出。
话虽这么说,php确实会更快退出,但这是否意味着php实际上花费了更少的时间来执行,从而在最终用户方面加快了速度?
明确地说,我的意思是,如果我有2个文件,相同的内容,并且每个文件都使用echo语句,而另一个文件使用了插入和脱离php的标准方法(除了文件大小与echo语句的“过度”使用(我猜中原因吗?)之间的差异,哪一个会更快?还是真的没有任何区别?
也许我正在考虑这个问题或正在看这个错误吗?
编辑:我做了一些检查,并找到了一种创建秒表来检查脚本执行时间的方法,并且似乎可以很好地退出。如果有人有兴趣这样做,这里是我现在选择使用的方法的链接。
http://www.phpjabbers.com/measuring-php-page-load-time-php17.html