我已经读过,最好将所有JavaScript文件保存在网页的底部.HTML5 Boilerplate模板似乎同意:http://html5boilerplate.com/
并且似乎被广泛使用.
我的问题是:首先,这是否有任何实际依据?我已经在Firebug中进行了测试,它似乎有一些小的影响,但它是否微不足道?在CSS文件和脚本文件加载之前,图像和其他来源似乎没有开始加载,但是将它们粘在底部似乎没有太大的区别.
有没有人知道是否有研究显示使用javascript库的性能开销(除了明显的下载时间)与使用基本的javascript?这些图书馆如此巨大,我很好奇.
从我的计算机科学学位来看,它似乎应该有增长.(换句话说,线性).
在计算机科学术语中,这没有威胁,但它如何实际影响页面加载时间和页面性能(以毫秒为单位)?我知道CPU是一个问题,RAM,等等.但是,是否有任何测试可以衡量这些事情?
我知道另一个因素是库经常被优化以执行与您以不太优化的方式手动编码相同的事情,但是库也有开销,并且不会使用所有这些功能.
编辑: 我发现这似乎彻底回答了我的问题,即使它开始的其他东西: 什么时候使用香草JavaScript与jQuery?
"由于评论很快指出(并且我同意100%),上面的陈述是指基准代码."本机"JavaScript解决方案(假设编写得很好)将胜过jQuery解决方案,几乎可以完成同样的事情.每个案例(我都希望看到一个例子).jQuery确实加快了开发时间,这是一个重要的好处,我并不是要淡化.它有助于易于阅读,易于遵循的代码,这不仅仅是一些开发人员能够自己创建.
在我看来,答案取决于你想要实现的目标.如果,正如我根据您对性能优势的引用所假设的那样,您可以在应用程序之后获得最佳速度,那么每次调用$()时使用jQuery都会引入开销.如果你想要提高可读性,一致性,跨浏览器兼容性等,那么肯定有理由支持jQuery优于"原生"JavaScript."
在这样的情况下,哪种方法或方法组合执行最快?
$year = db_get_fields("select distinct year from car_cache order by year desc");
Run Code Online (Sandbox Code Playgroud)
要么
$year = db_get_fields("select year from car_cache");
$year = array_unique($year);
sort($year);
Run Code Online (Sandbox Code Playgroud)
我听说mysql上的独特内容对于大型查询来说是一个真正的大性能,而且这个表可能有一百万行甚至更多.我想知道什么样的数据库类型组合,Innodb或MyISAM,也会起作用.我知道许多优化都依赖于查询.Year是一个无符号数,但其他字段是不同长度的varchar,我知道这也可能有所不同.如:
$line = db_get_fields("select distinct line from car_cache where year='$postyear' and make='$postmake' order by line desc");
Run Code Online (Sandbox Code Playgroud)
我读到使用新的innodb多键方法可以非常快速地进行这样的查询.但是,明确的和order by子句对我来说是个危险信号.
在表格中,如果您有一行,则该行的高度相同,并且该行中的所有单元格都会随着动态内容而增长和缩小.(如果一个单元格有大量文本而其他单元格不是很多,则它们都是相同的高度,让你创建列和行).
随着div浮动布局的普及,使用表格往往不受欢迎.但是,我如何复制表的这个和其他功能和好处,同时仍然保持显示设置阻止块,跨浏览器的好处?
我见过很多黑客,但他们似乎总是太复杂,互相干扰,或者需要调整.我正在寻找以下标准可靠的方法:
使用包装容器在一行中使div框具有相同的高度
<style>
.cell { float:left; }
</style>
<div class="row">
<div class="cell">Content 1 with more width</div>
<div class="cell">Content 2<br>with<br>more<br>height<br>Content 2<br>Content 2<br></div>
<div class="cell">Content 3</div>
</div>
Run Code Online (Sandbox Code Playgroud)
在这种情况下,所有类"单元格"的div将具有相同的高度,并且根本不是固定高度并且是浮动的并且将保持任何大小的动态内容.
垂直居中的内容
在这种情况下,使用上面的示例,对于任何大小的动态内容,所有内容都将垂直对齐到中间.
使div的类"cell"共享一个基于包装"row"的公共宽度
在表格中,当您指定宽度为100%或固定宽度时,单元格将自动尝试所有宽度相同,除非图像或块类似项目禁止此操作.如何通过浮动div实现这一目标?就像你说的那样,将所有"单元格"浮动到左边,你可以指定最小宽度或固定宽度,但我知道无法让它们共享一个动态的公共宽度,就像一个表格.在浮动的div中,它们缩小到内容的大小.
如何避免内容推送到容器/包装器"行"并将其视为只是一个块
无论出于何种原因,当浮动div位于包装器中时,您可以获得奇怪的行为,其中内容将"粘贴"到包装器上,就像浮动一样.甚至有时在最后使用<br style="clear:both">时我也会发生这种情况.
如果你能为我回答所有关于浮动div的问题,我们非常感激.请不要告诉我将其分解为单独的问题,因为它们都与同一事物有关.请不要告诉我,在其他地方会更好.如果你想要帮助很棒:)
如果解决方案display:table-cell单独使用,我已经尝试过这个,它会使div不像块一样,缩小它,背景也会缩小到内容,而在其他方面它不会像块一样.此外,某些版本的IE不支持此功能,我正在寻找跨浏览器解决方案.谢谢.
我在我的php脚本中设置了此设置,以使其可以运行,只要它需要解析和执行mysql查询并获取超过100,000行的图像。
ignore_user_abort(true);
set_time_limit(0);
#begin logging output
error_reporting(E_ALL);
ini_set('memory_limit', '512M');
Run Code Online (Sandbox Code Playgroud)
我在shell中运行以下命令:
nohup php myscript.php > output.txt
Run Code Online (Sandbox Code Playgroud)
在运行大约8到10个小时后,该脚本仍将运行,但是执行只会停止...没有更多输出..这不是我检查过的僵尸进程。它也没有达到内存限制,如果不满足,它不会退出吗?
到底是怎么回事?照看这个脚本并编写自定义代码来微调它确实是一个痛苦。到底是怎么回事?我读过Unix也许清理僵尸,但这不是僵尸。我知道这不是php设置..它没有通过网络服务器运行,它仅从命令行运行,因此可以提供。