There is a [possible] problem with your thinking: when either home1.php or home2.php is loaded into the "home" div, that new content will overwrite those two links. That also goes to the "music" div. Is that what you really want?
As a matter of fact, as you have it, when the client click on Home1 or Home2, the browser is going to load those pages as you have them as href anchors.
You might want to try something in this line:
<div "home">
<span style='display:block; ' onClick="$('#home').load('home1.php'); ">Home1</span>
<span style='display:block; ' onClick="$('#home').load('home2.php'); ">Home2</span>
</div>
If you do not want to overwrite the links inside "home", you might want to add new divs for home1 and home2 right below the two links for example.
EDIT (per request) - disabling the onClick and adding a loading gif
<div "home">
<span id='home1' style='display:block; ' onClick='showHomeOne(); ' >Home1</span>
<span id='home2' style='display:block; ' onClick='showHomeTwo(); ' >Home2</span>
<span id='home1Content' style='margin-top:4px; display:none; ' ></span>
<span id='home2Content' style='margin-top:4px; display:none; ' ></span>
</div>
<!--
in a more advanced mode, you could do showHome('1') and showHome('2')
--->
function showHomeOne() {
if ($('#home1Content').is(':hidden') == false) return;
// the above line works as a virtual onClick disable
// in case the home1Content is already being displayed
$('#home1Content').html('<img src=\'your-loading-gif.gif\' />').toggle();
// the \' is because I am using single quotes within single-quotes
// I could avoid this by using the double quotes on either of the sets
// Thel toggle() will toggle from display:none to display:'' and make
// the span visible.
$('#home1Content').load('home1.html');
// when the page home1.html is load, it automatically will overwrite the gif
}
This is it! Do the same for home2. Only your creativity and knowledge is the limit
to what you can do in jQuery.
Assumed that there are no extra processing to display the pages, you could use the
version below for ALL the pages:
Change the onClick to onCLick='showPage(\'pageID-of-your-choosing\'); '
function showPage(pageID) {
//make sure to change the hidden span IDs accordingly:
if ($('#'+pageID+'Content').is(':hidden') == false) return;
$('#'+pageID+'Content').html('<img src=\'your-loading-gif.gif\' />');
$('#'+pageID+'Content').load(pageID+'.html');
// for the last line you could replace it with a nested if:
// var myHtml;
// if (pageID == 'home1')
// myHtml='home1.html'
// else if (pageID == 'home2')
// myHtml='home2.html'
// else if (pageID == 'home3')
// myHtml='home3.html'
// else if (pageID == 'music1')
// myHtml='music1.html'
// else if (pageID == 'abcdefghig')
// myHtml='the-page-that-would-be-called-in-this-case.html';
// --> notice the ; at the end of the last line above: end of statement
//
// $('#'+pageID+'Content').load(myHtml);
}
Good luck!