I am trying to figure out how to have a <div/>
automatically reposition itself based upon the current date. Basically, the <div/>
to be moved contains an <hr/>
line that separates 'past' and 'future' items in a list, the items of which are identified by a date (YYMMDD
). Here is what I mean:
<head>
<!-- FIRST, SET DATE (YYMMDD) AS ID FOR DIV 'TIMELINE' -->
<script>
var today = new Date();
var dd = today.getDate();
var mm = today.getMonth()+1; //January is 0!
var yy=today.getFullYear().toString().substr(2, 2);
if(dd<10) {
dd='0'+dd
}
if(mm<10) {
mm='0'+mm
}
today = yy+mm+dd;
var element = document.getElementById("timeline");
element.setAttribute("data_date", today);
</script>
<!-- NEXT, MOVE 'TIMELINE' DYNAMICALLY SO THAT IT POSITIONS ITSELF IN-BETWEEN PAST & FUTURE EVENTS -->
<script type="text/javascript">
function sortdiv() {
var container = document.getElementById("content");
var elements = container.childNodes;
var sortMe = [];
for (var i=0; i<elements.length; i++) {
if (!elements[i].id) {
continue;
}
var sortPart = elements[i].id.split("-");
if (sortPart.length > 1) {
sortMe.push([ 1 * sortPart[1] , elements[i] ]);
}
}
sortMe.sort(function(x, y) {
return y[0] - x[0];
});
for (var i=0; i<sortMe.length; i++) {
container.appendChild(sortMe[i][1]);
}
document.getElementById("button").innerHTML = "done.";
}
</script>
</head>
<div id="content">
<div id="button"><a href="#" onclick="sortdiv();">sort!</a></div>
<!-- RIGHT NOW I HAVE A BUTTON TO TRIGGER THE FUNCTION FOR TESTING, BUT THIS WILL CHANGE TO AN ONLOAD WHEN IT WORKS -->
<div id="timeline">
<HR align="left">
<HR align="left">
</div>
<div class="date" data_date="170206">SOME CONTENT</DIV>
<div class="date" data_date="161011">SOME MORE CONTENT</DIV>
<div class="date" data_date="160915">EVEN MORE CONTENT</DIV>