$(function() {

	//cache the ticker
	var ticker = $("#ticker");

	//wrap dt:dd pairs in divs
	ticker.children().filter("dt").each(function() {

		var dt = $(this), container = $("<div>");

		dt.next().appendTo(container);
		dt.prependTo(container);

		container.appendTo(ticker);
	});

	//hide the scrollbar
	ticker.css("overflow", "hidden");

	//animator function
	function animator(currentItem) {

		//work out new anim duration
		var distance = currentItem.height();
		duration = (distance + parseInt(currentItem.css("marginTop"))) / 0.018;

		//animate the first child of the ticker
		currentItem.animate( {
			marginTop : -distance
		}, duration, "linear", function() {

			//move current item to the bottom
				currentItem.appendTo(currentItem.parent()).css("marginTop", 0);

				//recurse
				animator(currentItem.parent().children(":first"));
			});
	}
	;

	//start the ticker
	animator(ticker.children(":first"));

	//set mouseenter
	ticker.mouseenter(function() {

		//stop current animation
			ticker.children().stop();

		});

	//set mouseleave
	ticker.mouseleave(function() {

		//resume animation
			animator(ticker.children(":first"));

		});
});