Lift provides powerful facilities to build highly interactive web applications.
ajaxButton("", s => {println("you said: "+s); SetHtml("place", <b>{s}</b>)})
class Clock extends CometActor { override def defaultPrefix = Full("clk") // schedule a ping every 10 seconds so we redraw ActorPing.schedule(this, Tick, 10 seconds) private lazy val spanId = uniqueId+"_timespan" def render = bind("time" -> timeSpan) def timeSpan = (<span id={spanId}>{timeNow}</span>) override def lowPriority = { case Tick => partialUpdate(SetHtml(spanId, Text(timeNow.toString))) ActorPing.schedule(this, Tick, 10 seconds) } }