func canvasDraw(c jquery.JQuery) { if c.Attr("width") == "" && c.Attr("height") == "" { // Determine height from aspect ratio and parent's width. aspect := 1.5 // 3 by 2 aspect ratio attr := c.Attr("aspect") if attr != "" { _, err := fmt.Sscanf(attr, "%f", &aspect) if err != nil { panic(err) } } parent := c.Parent() w := parent.Width() c.SetAttr("width", w) c.SetAttr("height", float64(w)/aspect) } d, _ := getDrawerListener(c) if d != nil { go d.Draw(canvasContext(c)) } }