チェックしたオブジェクトにマークをつける!しかもゆさゆさ動く。
書いてから気づく。それってアニメーションgifでよくね?!OTL
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML+ARIA 1.0//EN" "http://www.w3.org/WAI/ARIA/schemata/html4-aria-1.dtd"> <html lang="ja"> <head> <title>test</title> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <meta http-equiv="Content-Style-Type" content="text/css"> <meta http-equiv="Content-Script-Type" content="text/javascript"> </head> <body> <div id="hoge"> </div> <script type="text/javascript"> var Marker = function (image) { this.element = image; this.timerId = null; this.count = 0; this.movement = [[0,0], [2,1], [4,3], [2,1], [0,0], [-2,1], [-4,3], [-2,1]]; this.max = this.movement.length; this.x = this.element.offsetLeft; this.y = this.element.offsetTop; this.view = image.ownerDocument.defaultView; }; Marker.prototype.dance = function (trigger) { var that = this; if (this.element !== trigger) return false; if (this.timerId) return true; this.timerId = this.view.setInterval ( function () { var x = that.x + that.movement[that.count][0]; var y = that.y + that.movement[that.count][1]; var s = that.element.style; s.top = y + 'px'; s.left = x + 'px'; that.count = (that.count + 1) % that.max; }, 80); }; Marker.prototype.rest = function (trigger) { if (this.element !== trigger) return false; if (this.timerId) { this.view.clearInterval (this.timerId); this.timerId = null; } return true; }; var createMarker = function (image) { if (1 > arguments.length) return null; image.style.position = 'absolute'; return new Marker (image); }; var createImage = function (image_src) { var img; (function (view) { var doc = view.document; img = doc.createElement ('img'); img.src = image_src; })(this); return img; }; var src = 'data:image/gif;base64,' + 'R0lGODlhGAAYALMAAPr4+wBlAQaPARF9CSylD0K9Gk3OHlqzNFnSG23WMHa/TKHfXa3lbczs' + 'ocDpgf///yH5BAEAAA8ALAAAAAAYABgAAATZ8Mkpg72Wah3GWYzjMMsxBBtlKU7jvq6jZFvH' + 'wPjLnNzQxoyg8Ndw8CaBW4O0aDqdPwaqoig+r02GAFFozCSDJfaqBZgPjcEjcHCMn2UzQNA4' + 'WJhvkEAOaAhAdyAMH1h7cn4kUgNMewIGCJAIhmZ+BYkDiwuTW5CTfQIFCAkgmAwJngIEnpWR' + 'CTsDCVyefJ+hkQYJmLaqtJSgkZEFagQIj7x8lQbKywgEYMsGBZPJ0MtqEgTQ0p/V0M4TBMTQ' + 'Ao7dxt/g2ebd4Snh697o7gQF3QXtKRvh+/v5EQA7'; var img = createImage (src); document.getElementById('hoge').appendChild (img); var m = createMarker (img); m.dance(img); </script> </body> </html>