| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158 | <html><head><title>Hover tests</title><script src="jquery.js"></script><style>/* Remove body dimensions so we can test enter/leave to surrounding browser chrome */body, html {	border: 0;	margin: 0;	padding: 0;}p {	margin: 2px 0;}.hover-box {	background: #f33;	padding: 3px;	margin: 10px 40px 20px 0;}.hover-status {	background: #f66;	padding: 1px;}.hover-inside {	background: #6f6;	padding: 1px;	margin: 8px auto;	width: 40%;	text-align: center;}</style> </head> <body>	<h2>Hover (mouse{over,out,enter,leave}) Tests</h2>	<p>Be sure to try moving the mouse out of the browser via the left side on each test.</p>	<div id="wrapper">	<div id="hoverbox" class="hover-box">		<div class="hover-status">			<button>Activate</button>			.hover() in/out: <span class="ins">0</span> / <span class="outs">0</span>		</div>		<div class="hover-inside">			Mouse over here should NOT trigger the counter.		</div>	</div>	<div id="liveenterbox" class="hover-box">		<div class="hover-status">			<button>Activate</button>			Live enter/leave: <span class="ins">0</span> / <span class="outs">0</span>		</div>		<div class="hover-inside">			Mouse over here should NOT trigger the counter.		</div>	</div>	<div id="delegateenterbox" class="hover-box">		<div class="hover-status">			<button>Activate</button>			Delegated enter/leave: <span class="ins">0</span> / <span class="outs">0</span>		</div>		<div class="hover-inside">			Mouse over here should NOT trigger the counter.		</div>	</div>	<div id="overbox" class="hover-box">		<div class="hover-status">			<button>Activate</button>			Bind over/out: <span class="ins">0</span> / <span class="outs">0</span>		</div>		<div class="hover-inside">			Mouse over here SHOULD trigger the counter.		</div>	</div>	<div id="liveoverbox" class="hover-box">		<div class="hover-status">			<button>Activate</button>			Live over/out: <span class="ins">0</span> / <span class="outs">0</span>		</div>		<div class="hover-inside">			Mouse over here SHOULD trigger the counter.		</div>	</div>	<div id="delegateoverbox" class="hover-box">		<div class="hover-status">			<button>Activate</button>			Delegated over/out: <span class="ins">0</span> / <span class="outs">0</span>		</div>		<div class="hover-inside">			Mouse over here SHOULD trigger the counter.		</div>	</div>	</div> <!-- wrapper --><script>$(function(){	var x,		countIns = function() {			var d = $(this).data();			$("span.ins", this).text(++d.ins);		},		countOuts = function() {			var d = $(this).data();			$("span.outs", this).text(++d.outs);		};	// Tests can be activated separately or in combination to check for interference	$("#hoverbox button").click(function(){		$("#hoverbox")			.data({ ins: 0, outs: 0 })			.hover( countIns, countOuts );		$(this).remove();	});	$("#delegateenterbox button").click(function(){		$("html")			.find("#delegateenterbox").data({ ins: 0, outs: 0 }).end()			.delegate("#delegateenterbox", "mouseenter", countIns )			.delegate("#delegateenterbox", "mouseleave", countOuts );		$(this).remove();	});	$("#liveenterbox button").click(function(){		$("#liveenterbox")			.data({ ins: 0, outs: 0 })			.live("mouseenter", countIns )			.live("mouseleave", countOuts );		$(this).remove();	});	$("#overbox button").click(function(){		$("#overbox")			.data({ ins: 0, outs: 0 })			.bind("mouseover", countIns )			.bind("mouseout", countOuts );		$(this).remove();	});	$("#liveoverbox button").click(function(){		$("#liveoverbox")			.data({ ins: 0, outs: 0 })			.live("mouseover", countIns )			.live("mouseout", countOuts );		$(this).remove();	});	$("#delegateoverbox button").click(function(){		$(document)			.find("#delegateoverbox").data({ ins: 0, outs: 0 }).end()			.delegate("#delegateoverbox", "mouseover", countIns )			.delegate("#delegateoverbox", "mouseout", countOuts );		$(this).remove();	});});</script></body></html>
 |