View Demo
Download source files
Ads by Google
Posted by ellen at March 01, 2011 08:39 PM
"index.htm"
Sample HTML page:
banners.xml<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> <title>Rotating banner example</title> <!-- layout style --> <link href="style.css" rel="stylesheet" type="text/css" media="screen" /> <!-- jquery --> <script src="http://code.jquery.com/jquery-1.5.2.min.js"></script> <script type="text/javascript" src="banner.js"></script>
</head> <body>
<div id="subheader"> <!-- Box Start --> <div class="" style="display:none;" id='thebanner'> <div class="top"><span></span></div> <div class="box-content"> <div class="box-content2"> <div class="box-padding"> <!-- Content Begin --> <div id="newsBanner" align="center"> <b>-Educators:</b> Brighten Your Learning Results: <b>Free sessions</b> for educators and course developers. <a href="#" target="blank">See calendar >>></a> </div><!--end newsbanner--> <!-- Content End --> </div><!--boxpadding--> </div><!--end box-content2--> </div><!--end box-content--> <div class="bottom"><span></span></div> </div><!--end box--> <div class="clear"></div> <!-- Box End --> </div>
</body> </html>
Sample XML file:
<?xml version="1.0" encoding="utf-8"?> <dates>
<!--put sets in date order, oldest first-->
<date enddate="02/24/2011" nm='24'> <items> <item nm="apples"> <text><![CDATA[ 1 ends Feb 24, 2011 and <b>HTML</b> and <a href="http://google.com">links</a> ]]></text> <color>red</color> </item> <item nm="pears"> <text><![CDATA[ 2 ends Feb 24, 2011 of text and <b>HTML</b> and <a href="http://google.com">links</a> ]]></text> <color>blue</color> </item> <item nm="pineapples"> <text><![CDATA[ 3 ends Feb 24, 2011 <b>HTML</b> and <a href="http://google.com">links</a> ]]></text> <color>blue</color> </item> <item nm="vgt"> <text><![CDATA[ 4 ends Feb 24, 2011bunch of text and <b>HTML</b> and <a href="http://google.com">links</a> ]]></text> <color>blue</color> </item> </items> </date> <date enddate="02/25/2011" nm='25'> <items> <item nm="apples"> <text><![CDATA[ 1 ends Feb 25, 2011 and <b>HTML</b> and <a href="http://google.com">links</a> ]]></text> <color>blue</color> </item> <item nm="pears"> <text><![CDATA[ 2 ends Feb 25, 2011 of text and <b>HTML</b> and <a href="http://google.com">links</a> ]]></text> <color>red</color> </item> <item nm="pineapples"> <text><![CDATA[ 3 ends Feb 25, 2011 <b>HTML</b> and <a href="http://google.com">links</a> ]]></text> <color>blue</color> </item> <item nm="vgt"> <text><![CDATA[ 4 ends Feb 25, 2011bunch of text and <b>HTML</b> and <a href="http://google.com">links</a> ]]></text> <color>green</color> </item> </items> </date> <date enddate="04/17/2011" nm='20'> <items> <item id="series_promo"> <text><![CDATA[ UMHS Educator Learning Series. Free, limited seating.<a href="#">Register today. See calendar.</a> ]]></text> <color>red</color> </item> <item nm="mih_promo"> <text><![CDATA[ One-day Conference: Making it Happen. May 19. Ann Arbor. <a href="#">Register</a> ]]></text> <color>blue</color> </item> <item nm="next_session_promo"> <text><![CDATA[ Designing Short, Effective Inservices. Free session. April 12.<a href="#">Register</a> ]]></text> <color>green</color> </item> </items> </date> <date enddate="05/17/2011" nm='20'> <items> <item id="series_promo"> <text><![CDATA[ ends 05/17/2011 Free, limited seating.<a href="#">Register today. See calendar.</a> ]]></text> <color>red</color> </item> <item nm="mih_promo"> <text><![CDATA[ ends 05/17/2011 One-day Conference: Making it Happen. May 19. Ann Arbor. <a href="#">Register</a> ]]></text> <color>blue</color> </item> <item nm="next_session_promo"> <text><![CDATA[ ends 05/17/2011 Designing Short, Effective Inservices. Free session. April 12.<a href="#">Register</a> ]]></text> <color>green</color> </item> </items> </date> <date enddate="06/23/2011" nm='28'> <items> <item nm="apples"> <text><![CDATA[ 1 ends June 23, 2011 and <b>HTML</b> and <a href="http://google.com">links</a> ]]></text> <color>blue</color> </item> <item nm="pears"> <text><![CDATA[ 2 ends June 23, 2011 of text and <b>HTML</b> and <a href="http://google.com">links</a> ]]></text> <color>blue</color> </item> <item nm="pineapples"> <text><![CDATA[ 3 ends June 23, 2011 <b>HTML</b> and <a href="http://google.com">links</a> ]]></text> <color>green</color> </item> <item nm="vgt"> <text><![CDATA[ 4 ends June 23, 2011bunch of text and <b>HTML</b> and <a href="http://google.com">links</a> ]]></text> <color>green</color> </item> </items> </date> <date enddate="07/23/2011" nm='28'> <items> <item nm="apples"> <text><![CDATA[ 1 ends July 23, 2011 and <b>HTML</b> and <a href="http://google.com">links</a> ]]></text> <color>blue</color> </item> <item nm="pears"> <text><![CDATA[ 2 ends July 23, 2011 of text and <b>HTML</b> and <a href="http://google.com">links</a> ]]></text> <color>blue</color> </item> <item nm="pineapples"> <text><![CDATA[ 3 ends July 23, 2011 <b>HTML</b> and <a href="http://google.com">links</a> ]]></text> <color>green</color> </item> <item nm="vgt"> <text><![CDATA[ 4 ends July 23, 2011bunch of text and <b>HTML</b> and <a href="http://google.com">links</a> ]]></text> <color>green</color> </item> </items> </date> </dates>
Style sheet:
html, body, #wrapper { height: 100%; } body > #wrapper{ height: auto; min-height: 100%; } body { background: #fafafa url(../images/body_bg.gif) repeat-x left top; font-size: 13px; margin: 0; } /* Sub Header */ #sub-header { width: 960px; float: left; } /* box style */ .box { width: 100%; margin-bottom: 15px; float: left; } .top { width:100%; height:12px; background:url(../images/blue/top.png) no-repeat left top; } .bluebox .top {background:url(../images/blue/top.png) repeat;} .redbox .top {background:url(../images/red/top.png) repeat;} .orangebox .top {background:url(../images/orange/top.png) repeat;} .greenbox .top {background:url(../images/green/top.png) repeat;} .purplebox .top {background:url(../images/purple/top.png) repeat;} .top span { width: 13px; height:12px; background: #fafafa url(../images/blue/top-right.png) no-repeat right top; float: right; overflow: hidden; } .bluebox .top span {background:#fafafa url(../images/blue/top-right.png) no-repeat right top;} .redbox .top span {background:#fafafa url(../images/red/top-right.png) no-repeat right top;} .orangebox .top span {background:#fafafa url(../images/orange/top-right.png) no-repeat right top;} .greenbox .top span {background:#1cab09 url(../images/green/top-right.png) no-repeat right top;} .purplebox .top span {background:#4931c3 url(../images/purple/top-right.png) no-repeat right top;} .box-content { /*background: url(../images/blue/bannertile.png) repeat ;*/ width: 100%; float: left; /*background-color: #f0f0f0;*/ } .box-content2 { /*background: url(../images/blue/bannertile.png) repeat-y left top;*/ width: 100%; float: left; } .bluebox .box-content, .bluebox .box-content2 {background:url(../images/blue/bannertile.png) repeat;} .redbox .box-content, .redbox .box-content2 {background:url(../images/red/bannertile.png) repeat;} .orangebox .box-content, .orangebox .box-content2 {background:url(../images/orange/bannertile.png) repeat;} .greenbox .box-content, .greenbox .box-content {background:url(../images/green/bannertile.png) repeat;} .purplebox .box-content, .purplebox .box-content {background:url(../images/purple/bannertile.png) repeat;} .bottom { width:100%; height:12px; background:url(../images/blue/bottom.png) no-repeat left top; float: left; } .bluebox .bottom { background:url(../images/blue/bottom.png) no-repeat left top; } .redbox .bottom { background:url(../images/red/bottom.png) no-repeat left top; } .orangebox .bottom { background:url(../images/orange/bottom.png) no-repeat left top; } .greenbox .bottom { background:url(../images/green/bottom.png) no-repeat left top; } .purplebox .bottom { background:url(../images/purple/bottom.png) no-repeat left top; } .bottom span { width: 13px; height:12px; background: #fafafa url(../images/blue/bottom_right.png) no-repeat right top; float: right; overflow: hidden; } .bluebox .bottom span { background: #fafafa url(../images/blue/bottom_right.png) no-repeat right top;} .redbox .bottom span { background: #fafafa url(../images/red/bottom_right.png) no-repeat right top;} .orangebox .bottom span { background: #fafafa url(../images/orange/bottom_right.png) no-repeat right top;} .greenbox .bottom span { background: #1cab09 url(../images/green/bottom_right.png) no-repeat right top;} .purplebox .bottom span { background: #4931c3 url(../images/purple/bottom_right.png) no-repeat right top;} .box p { margin:5px 0 10px 0; padding-bottom: 5px; clear: both; } .box-padding { padding: 5px 15px 10px 15px; } #content .box-padding p{ padding-bottom: 10px; } .box-padding h2 { padding-top: 0px; margin-top: 0; } .box-padding h3 { padding-top: 0; margin-top: 10px; }"banner.js"
javascript file
if (typeof console == "undefined" || typeof console.log == "undefined") var console = { log: function() {} }; //jquery stuff $(document).ready(function () { var c; var t; $.ajax({ type: "GET", url: "banners.xml", dataType: "xml", success: xmlParser }); }); function xmlParser(xml) { var todaysdatenumber=dayOfYear(new Date()); $(xml).find("date").each(function () { var itmend = $(this).attr("enddate"); // console.log('itmend'+itmend); var itmDate = new Date(itmend); var itmendnumber = dayOfYear(itmDate); // console.log('itmendnumber='+itmendnumber); var bannerwritten = 0; // console.log('todaysdatenumber='+todaysdatenumber); console.log(itmendnumber > todaysdatenumber); if((itmendnumber >= todaysdatenumber)&&(bannerwritten==0)) { var itemslength =$(this).find('items').find('item').length; var randomnumber=Math.floor(Math.random()*(itemslength)) console.log('itmend= '+itmend+' itmendnumber= '+ itmendnumber + ' itemslength='+itemslength); c = $(this).find('items').find('item').filter(function(index) {return index == randomnumber;}).find('color').text(); t = $(this).find('items').find('item').filter(function(index) {return index == randomnumber;}).find('text').text(); console.log('c='+c); console.log('t='+t); $("#subheader").removeClass(); $("#subheader").addClass(c+"box"); //$("#newsBanner").text(t); $("#newsBanner").html(t); $("#thebanner").fadeIn(1000); bannerwritten=1; }//end if else{ $("#subheader").addClass(c+"box"); $("#thebanner").fadeIn(1000); } }//end anon function assigned to each );//end each } //end function xmlParser function dayOfYear(dtVal){ var dtNum; var firstDay = Date.UTC(dtVal.getFullYear(), 0, 0); var thisDay = Date.UTC(dtVal.getFullYear(), dtVal.getMonth(), dtVal.getDate()); dtNum = Math.floor((thisDay - firstDay) / (1000 * 60 * 60 * 24))+1; return dtNum; } //http://www.webdeveloper.com/forum/showthread.php?t=125078
Ads by Google