我正在为网站的移动部分构建原型。它不使用动态人员,只使用jQuery和Foundation 4.当我在iphone的浏览器中测试网站时,加载和响应触摸的速度非常慢。有些经验丰富的人可以告诉我所有事情,以确保网站加载并在移动设备上更快地运行吗?
我的所有图片都是“为网络”保存的,所以它们应该不是问题。它会慢吗,因为我的CSS样式表非常冗长?我不是将一个类组合并应用于很多东西的专家,所以我可能有太多的id和单独的类?在这种情况下,这会是一个大问题吗?此外,它可能会很慢,因为我使用的是Foundation,jQuery和Flexlider插件,每个插件都有自己的多个样式表和.js文件?我应该丢弃我不在其文件夹中使用的任何文件吗?我是在正确的轨道上,我还能做些什么?先感谢您。
答案 0 :(得分:4)
有一些东西帮助我更快地使我的移动应用程序。我和你有同样的问题,屏幕响应非常低。
<小时/> 删除所有未使用的代码
我有很多注释的代码和文件,我实际上没有使用。这包括未使用的CSS样式。
你甚至需要课程还是ID?
看着我的应用程序,我几乎在任何元素上都有一个类或Id。我是否可以使用元素选择器。 here有关选择器的更多信息。遵循DOM结构。我主要使用一个类来表示一个特定元素的组和ID(我几乎从不需要)。
检查您是否有不添加内容的CSS样式
有时您有多种样式,实际上并没有添加任何内容。一个很好的例子是使用float: *;
和display: inline-block;
。当在一个元素上同时使用这两个元素时没有额外的功能,因为默认情况下float会使元素成为内联块。
优化脚本
我的意思是,看看你是否可以使用相同的功能缩短你的代码。使用两个几乎相同的功能?将它们缩短为一个功能。使用脚本语言的预制功能也可以帮助您更快地编写代码。所以不要创建自己的排序函数,而是使用预制函数。 有关优化代码的帮助,建议您查看here。
jQuery选择器
使您的jQuery选择器更具体。例如:
你可能有一个课堂内容的div。
<div class="content"></div>
而不是用
选择它$('.content')
您可以使用
$('div.content' )
jQuery现在只能将搜索限制为DIV元素 更多信息更高效的jQuery选择器here
商店广告代码
当你获得信息时,例如screenWidth减去另一个div的宽度,并且你使用它多一次,存储它!这样你的网页就不会一遍又一遍地进行计算,只能得到变量。
使用一半时不要使用'大'插件
当您只使用您正在使用的插件的一小部分时,最好自己查找或插入其他插件或代码。加载插件文件可能会损害您的性能,如果实际上甚至没有必要,那将是一种耻辱。
这只是一个全球性的观点,我有一个很大的优势,我希望你能找到一个很好的用途。
当我出错时,请随意纠正我。