当我单击"关于"链接时,gif 图像将加载到页面的一角。但是我需要在页面加载时淡入整个背景,我添加了$('#content').fadeIn(1000);
以淡入淡出效果显示背景,但是如何在背景上加载 gif 时淡入背景页面?
.HTML
<div id="cssmenu">
<li><a href="index.html">HTML</a></li>
<li><a href="about.html">about</a></li>
<li><a href="portfolio.html">portfolio</a></li>
</div>
<div id="wrapper">
<div id="content">
<h2>Welcome!</h2>
<p> ajax functionality so that the content loads into the relevant container instead of the user having to navigate to another page some awesome effects...</p>
</div></div>
.CSS
#wrapper {
border:1px solid green
}
#cssmenu {
background: #333;
list-style: none;
width:120px;
}
#cssmenu li {
margin: 0;
padding: 0;
list-style: none;
width:120px;
}
#cssmenu a {
background: #333;
border-bottom: 1px solid #393939;
color: #ccc;
display: block;
padding: 8px 2px;
text-decoration: none;
font-weight: normal;
}
#cssmenu a:hover {
background: #2580a2;
color: #fff;
}
#load {
display: none;
position: absolute;
right: 10px;
top: 10px;
background: url(http://i.imgur.com/fhiyJSJ.gif);
width: 43px;
height: 11px;
text-indent: -9999em;
}
#content {
}
杰奎里
$(document).ready(function() {
var hash = window.location.hash.substr(1);
var href = $('#cssmenu li a').each(function(){
var href = $(this).attr('href');
if(hash==href.substr(0,href.length-5)){
var toLoad = hash+'.html #content';
$('#content').load(toLoad)
}
});
$('#cssmenu li a').click(function(){
var toLoad = $(this).attr('href')+' #content';
$('#content').hide('fast',loadContent);
$('#load').remove();
$('#wrapper').append('<span id="load">LOADING...</span>');
$('#content').fadeIn(1000);
$('#load').fadeIn('normal');
window.location.hash = $(this).attr('href').substr(0,$(this).attr('href').length-5);
function loadContent() {
$('#content').load(toLoad,'',showNewContent())
}
function showNewContent() {
$('#content').show('normal',hideLoader());
}
function hideLoader() {
$('#load').fadeOut('normal');
}
return false;
});
});
小提琴
http://jsfiddle.net/bpvp4vse/1/
#wrapper {
border:1px solid green;
position:relative;// add this
}
#load {
display: none;
position: absolute;
right: 50%; //this
top: 50%;//this
background: url(http://i.imgur.com/fhiyJSJ.gif);
width: 43px;//hack to center horizontally
height: 11px;//hack to center vertically
margin-left:-21px;
margin-top:-5px;
text-indent: -9999em;
}
将 #wrapper 更改为 #content
$('#content').append('<span id="load">LOADING...</span>');
http://jsfiddle.net/bpvp4vse/8/