var Reflector = { reflect: function(element) { element = $(element); options = $H({ amount: 1/3, opacity: 1/3 }).merge(arguments[1] || {}); var p = element.parentNode, n = element.nextSibling; var d = 1.0/(element.height*options.amount); (element.height*options.amount).times( function(line) { var h = Builder.node('div',{style:'height:1px;overflow:hidden;'}, [Builder.node('img',{src:element.src, style:'margin-top:-'+(element.height-line-1)+'px;border:0' })]); p.insertBefore(h,n); $(h).setOpacity((1-d*line)*options.opacity); }); } }