morris.js/lib/morris.hover.coffee

34 lines
714 B
CoffeeScript
Raw Normal View History

2012-12-04 20:12:34 +01:00
class Morris.Hover
# Displays contextual information in a floating HTML div.
@defaults:
class: 'morris-popup'
2012-12-04 20:12:34 +01:00
constructor: (options = {}) ->
@options = $.extend {}, Morris.Hover.defaults, options
@el = $ "<div class='#{@options.class}'></div>"
@el.hide()
@options.parent.append(@el)
2012-12-04 20:12:34 +01:00
update: (x, y, data) ->
@render(data)
@show()
@moveTo(x, y)
render: (data) ->
2012-12-04 20:12:34 +01:00
if typeof @options.content is 'function'
@el.html @options.content(data)
else
@el.html @options.content
moveTo: (x, y) ->
@el.css(
left: (x - @el.outerWidth() / 2) + "px"
top: (y - @el.outerHeight() - 10) + "px")
show: ->
2012-12-04 20:12:34 +01:00
@el.show()
2012-12-04 20:12:34 +01:00
hide: ->
@el.hide()