是否有可能在浏览器下载页面时显示Twitter引导进度条?
Is it possible to display a Twitter Bootstrap Progress bar while the browser downloads the page?
我有一个有很多大图片的网站,我想在一切加载时显示一个twitter引导进度条。
这是可能的吗?jquery有跟踪页面加载进度的方法吗?
我想只显示一个进度条,直到所有的css, js和图像等已经下载。
您可以尝试这样做:
HTML<div class="progress progress-striped active">
<div class="bar"></div>
</div>
<div class="imagelist">
<img src="http://studio7designs.com/wp-content/uploads/green-grass.jpeg"/>
<img src="http://studio7designs.com/wp-content/uploads/rowboat-600x398.jpg"/>
<img src="http://studio7designs.com/wp-content/uploads/blue-wheat-grass.jpeg"/>
<img src="http://studio7designs.com/wp-content/uploads/rocks.jpg"/>
<img src="http://studio7designs.com/wp-content/uploads/sun-grass-golden.jpg"/>
<img src="http://studio7designs.com/wp-content/uploads/blue-water-photo.jpg"/>
<img src="http://studio7designs.com/wp-content/uploads/flight.jpg"/>
</div>
Javascript $.fn.imagesLoaded = function (callback, onEach) {
var elems = this.filter('img'),
len = elems.length,
blank = "data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///ywAAAAAAQABAAACAUwAOw==";
elems.bind('load.imgloaded', function () {
if(typeof onEach === 'function'){
onEach(len, elems.length); // runs on every image load
}
if (--len <= 0 && this.src !== blank) {
elems.unbind('load.imgloaded');
callback.call(elems, this);
}
}).each(function () {
// cached images don't fire load sometimes, so we reset src.
if (this.complete || this.complete === undefined) {
var src = this.src;
// webkit hack from http://groups.google.com/group/jquery-dev/browse_thread/thread/eee6ab7b2da50e1f
// data uri bypasses webkit log warning (thx doug jones)
this.src = blank;
this.src = src;
}
});
return this;
};
$(document).ready(function () {
var progress = $('.progress');
var progressbar = progress.children('.bar');
$('.imagelist img').imagesLoaded(function () {
progressbar.width('100%');
progress.fadeOut();
}, function (left, total) {
progressbar.width((total - left) / total * 100 + '%');
});
});
我采用Paul Irish编写的. imagesloaded()代码,并添加了一个每次加载图像时触发的额外回调。对于每一个加载的图片,进度条都会前进。
这不是完全准确的,因为它不跟踪任何特定文件的加载量,我不完全确定如果不使代码复杂化,这是可能的,所以进度条只在加载图像时改变,而不是在加载时。
相关文章:
- Twitter引导选项卡显示页面加载时未触发事件
- 如何隐藏和显示twitter引导程序选项卡
- 将twitter tweet获取到javascript变量中进行显示.
- 将twitter引导程序popover设置为在某个事件之后隐藏,然后在另一个事件之后显示
- 在 Twitter 引导程序中自动显示工具提示,而无需放置光标
- Twitter Typeahead.js:点击/聚焦时显示所有选项
- 模态未在使用 Twitter Bootstrap 3.0 的手机上显示
- 如何使用来自 Twitter Bootstrap 的弹出框来显示图像
- 显示模态时未触发 Twitter 引导模态事件
- Twitter Bootstrap v3.0.0 未显示模态组件
- Twitter按钮未显示在IE9中
- Twitter-bootstrap Modal 未显示在页面加载上(灰屏)
- Twitter 引导选项卡:悬停时显示,鼠标输出时隐藏
- 如何在类似于Twitter的新弹出窗口中单击时显示放大的图像
- 如何使用 Twitter Bootstrap 3 显示选项卡内容
- Twitter 引导日期时间选择器在模态中未正确显示
- Twitter 引导工具提示弹出框显示问题
- Twitter typehead.js显示整个查询,而不仅仅是值
- Twitter”;在推特上;按钮在Firefox中显示为一个按钮,在Chrome中只是一个链接
- 在两列中显示Twitter Live搜索结果