本文整理汇总了Scala中org.scalajs.dom.Element类的典型用法代码示例。如果您正苦于以下问题:Scala Element类的具体用法?Scala Element怎么用?Scala Element使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了Element类的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Scala代码示例。
示例1: NodeListSeq
//设置package包名称以及导入依赖的类
package org.danielnixon.progressive.extensions
import org.danielnixon.progressive.facades.dom.ElementMatches
import org.danielnixon.progressive.shared.Wart
import org.scalajs.dom.{ DOMList, Element, EventTarget, Node }
import org.danielnixon.saferdom.implicits.saferDOMList
import org.scalajs.dom.raw.Event
package object dom {
implicit class NodeListSeq[T <: Node](nodes: DOMList[T]) extends IndexedSeq[T] {
@SuppressWarnings(Array(Wart.OptionPartial))
override def foreach[U](f: T => U): Unit = {
for (i <- 0 until nodes.length) {
f(nodes.item(i))
}
}
override def length: Int = nodes.length
@SuppressWarnings(Array(Wart.Throw))
override def apply(idx: Int): T = {
nodes.itemOpt(idx).getOrElse(throw new IndexOutOfBoundsException(idx.toString))
}
}
implicit class ElementWrapper(val element: Element) extends AnyVal {
def closest(selector: String): Option[Element] = {
Option(ElementMatches.element2ElementMatches(element).closest(selector))
}
}
implicit class EventTargetWrapper(val eventTarget: EventTarget) extends AnyVal {
@SuppressWarnings(Array(Wart.Nothing))
def on[T <: Event](events: String, selector: String)(handler: (T, Element) => Unit): Unit = {
val listener = (event: T) => {
event.target match {
case element: Element => element.closest(selector).foreach(closest => handler(event, closest))
case _ =>
}
}
eventTarget.addEventListener(events, listener)
}
}
}
开发者ID:danielnixon,项目名称:progressive,代码行数:52,代码来源:package.scala
示例2: EventHandlerSetupService
//设置package包名称以及导入依赖的类
package org.danielnixon.progressive.services
import org.danielnixon.progressive.extensions.dom.{ EventTargetWrapper, NodeListSeq }
import org.danielnixon.progressive.shared.Wart
import org.danielnixon.progressive.shared.api.DataAttributes
import org.scalajs.dom.{ Element, Event, MouseEvent, html }
class EventHandlerSetupService(
refreshService: => RefreshService,
hijaxService: => HijaxService,
additionalSetupInitial: html.Body => Unit,
additionalSetup: Element => Unit
) {
def setup(element: Element): Unit = {
additionalSetup(element)
element.querySelectorAll(s"[${DataAttributes.refresh}]").collect({ case e: Element => e }) foreach { node =>
refreshService.setupRefresh(node)
}
}
@SuppressWarnings(Array(Wart.AsInstanceOf, Wart.Nothing))
def setupInitial(body: html.Body): Unit = {
additionalSetupInitial(body)
body.on("click", s"a[${DataAttributes.progressive}]") { (e: MouseEvent, element: Element) =>
hijaxService.ajaxLinkClick(e, element.asInstanceOf[html.Anchor])
}
body.on("click", s"form[${DataAttributes.progressive}] button[${DataAttributes.progressive}]") { (e: Event, element: Element) =>
hijaxService.ajaxSubmitButtonClick(element.asInstanceOf[html.Button])
}
body.on("submit", s"form[${DataAttributes.progressive}]") { (e: Event, element: Element) =>
hijaxService.ajaxFormSubmit(e, element.asInstanceOf[html.Form])
}
setup(body)
}
}
开发者ID:danielnixon,项目名称:progressive,代码行数:43,代码来源:EventHandlerSetupService.scala
示例3: ConfigurationBox
//设置package包名称以及导入依赖的类
package ui
import org.scalajs.dom.{Element, document}
object ConfigurationBox {
def create(triggerCallback: SimulationTrigger => Unit): Element = {
val configBox = document.createElement("form")
configBox.id = "params-box"
configBox.appendChild(WidthBox.setupUI(SimulationTriggeringButtons))
configBox.appendChild(DensityBox.setupUI(SimulationTriggeringButtons))
configBox.appendChild(ProbabilityBox.setupUI(SimulationTriggeringButtons))
configBox.appendChild(SpeedBox.setupUI(SimulationTriggeringButtons))
configBox.appendChild(SpeedStepBox.setupUI(SimulationTriggeringButtons))
configBox.appendChild(MinimumTimeoutBox.setupUI(SimulationTriggeringButtons))
configBox.appendChild(CountedIterationsBox.setupUI(SimulationTriggeringButtons))
configBox.appendChild(SimulationTriggeringButtons.setupUI(triggerCallback))
configBox
}
}
开发者ID:tlewowski,项目名称:nagel-schreckenberg,代码行数:21,代码来源:ConfigurationBox.scala
示例4: DungeonUI
//设置package包名称以及导入依赖的类
package mazes.webapp
import mazes.generators.DungeonGenerator.Map
import org.scalajs.dom.Element
abstract class DungeonUI(val base:Element,val speed:Int){
def setupUI()
def dungeonToText(d: Map): String = {
var r = " "
for (j <- 0 until d.columns) {
r+=(j % 10).toString()
}
r += "\n"
for (i <- 0 until d.rows) {
r+=(i % 10).toString()
for (j <- 0 until d.columns) {
r += d(i, j).asciiArt + ""
}
r += "\n"
}
return r
}
}
开发者ID:facundoq,项目名称:toys,代码行数:28,代码来源:DungeonUI.scala
示例5: Context
//设置package包名称以及导入依赖的类
package org.codeape.sc.frontend
import io.udash._
import io.udash.wrappers.jquery._
import org.codeape.sc.shared.MainServerREST
import org.scalajs.dom
import org.scalajs.dom.{Element, document}
import scala.scalajs.js.JSApp
import scala.scalajs.js.annotation.JSExport
import scala.util.Try
object Context {
implicit val executionContext = scalajs.concurrent.JSExecutionContext.Implicits.queue
private val routingRegistry = new RoutingRegistryDef
private val viewPresenterRegistry = new StatesToViewPresenterDef
implicit val applicationInstance = new Application[RoutingState](routingRegistry, viewPresenterRegistry, RootState)
import io.udash.rest._
val port = Try(dom.window.location.port.toInt).getOrElse(80)
val host = dom.window.location.hostname
val restServer = DefaultServerREST[MainServerREST](host, port, "/api/")
}
object Init extends JSApp with StrictLogging {
import Context._
@JSExport
override def main(): Unit = {
logger.info("StampClock started")
jQ(document).ready((_: Element) => {
val appRoot = jQ("#application").get(0)
if (appRoot.isEmpty) {
logger.error("Application root element not found! Check your index.html file!")
} else {
applicationInstance.run(appRoot.get)
}
})
}
}
开发者ID:codeape,项目名称:StampClock,代码行数:42,代码来源:init.scala
示例6: TabOverride
//设置package包名称以及导入依赖的类
package com.karasiq.taboverridejs
import org.scalajs.dom
import org.scalajs.dom.Element
import scala.scalajs.js
import scala.scalajs.js.annotation.JSName
@js.native
@JSName("tabOverride")
object TabOverride extends TabOverride
@js.native
trait TabOverride extends js.Object {
def set(textArea: dom.html.TextArea): Unit = js.native
def tabSize(size: Int = ???): Int = js.native
def autoIndent(value: Boolean = ???): Boolean = js.native
def tabKey(key: Int = ???, mod: js.Array[String] = ???): Int = js.native
def addExtension(hook: String, function: js.Function): Unit = js.native
def delay(delay: Int = ???): Int = js.native
def escape(escape: Boolean = ???): Boolean = js.native
def style: TabOverrideStyle = js.native
}
@js.native
trait TabOverrideStyle extends js.Object {
def apply(enabled: Boolean = ???): Boolean = js.native
def enabledClass(cls: String = ???): String = js.native
def activeClass(cls: String = ???): String = js.native
def hardTabSize(tab: Int = ???): Int = js.native
def utils: TabOverrideStyleUtils = js.native
}
@js.native
trait TabOverrideStyleUtils extends js.Object {
def hardTabSizeSupported: Boolean = js.native
def addEnabledClass(e: Element): Unit = js.native
def addActiveClass(e: Element): Unit = js.native
def removeEnabledClass(e: Element): Unit = js.native
def removeActiveClass(e: Element): Unit = js.native
def updateEnabledClass(cls: String = ???): Unit = js.native
def updateActiveClass(cls: String = ???): Unit = js.native
def addTabSizeCSSSelector(cls: String = ???): Unit = js.native
def removeTabSizeCSSSelector(cls: String = ???): Unit = js.native
}
开发者ID:Karasiq,项目名称:scalajs-marked,代码行数:48,代码来源:TabOverride.scala
示例7: Init
//设置package包名称以及导入依赖的类
package com.oni.udash
import acyclic.file
import io.udash._
import io.udash.wrappers.jquery._
import org.scalajs.dom.{ Element, document }
import scala.scalajs.js.JSApp
import scala.scalajs.js.annotation.JSExport
import scalacss.Defaults._
import scalacss.ScalatagsCss._
import scalatags.JsDom._
import com.oni.udash.styles._
import com.oni.udash.styles.OniStyles2
import com.oni.udash.styles.GlobalStyles
import com.oni.udash.styles.DemoStyles
import com.oni.udash.styles.partials.FooterStyles
import com.oni.udash.styles.partials.HeaderStyles
import org.scalajs.dom.raw.HTMLStyleElement
object Init extends JSApp with StrictLogging {
import Context._
@JSExport
override def main(): Unit = {
jQ(document).ready((_: Element) => {
val appRoot = jQ("#application").get(0)
if (appRoot.isEmpty) {
logger.error("Application root element not found! Check your index.html file!")
} else {
applicationInstance.run(appRoot.get)
jQ(GlobalStyles.render[TypedTag[HTMLStyleElement]].render).insertBefore(appRoot.get)
jQ(DemoStyles.render[TypedTag[HTMLStyleElement]].render).insertBefore(appRoot.get)
jQ(OniStyles.render[TypedTag[HTMLStyleElement]].render).insertBefore(appRoot.get)
jQ(OniStyles2.render[TypedTag[HTMLStyleElement]].render).insertBefore(appRoot.get)
jQ(CsStyles.render[TypedTag[HTMLStyleElement]].render).insertBefore(appRoot.get)
jQ(CsStyles2.render[TypedTag[HTMLStyleElement]].render).insertBefore(appRoot.get)
jQ(FooterStyles.render[TypedTag[HTMLStyleElement]].render).insertBefore(appRoot.get)
jQ(HeaderStyles.render[TypedTag[HTMLStyleElement]].render).insertBefore(appRoot.get)
}
})
}
}
开发者ID:ObjectNirvana,项目名称:oni-web,代码行数:46,代码来源:init.scala
示例8: RootViewPresenter
//设置package包名称以及导入依赖的类
package com.oni.udash.views
import org.scalajs.dom.Element
import com.oni.udash.styles.GlobalStyles
import com.oni.udash.views.components.Footer
import com.oni.udash.views.components.Header
import com.oni.udash.RootState
import io.udash.DefaultViewPresenterFactory
import io.udash.View
import scalacss.ScalatagsCss.styleaToJsDomTag
import scalatags.JsDom.all.div
import scalatags.JsDom.tags2.main
object RootViewPresenter extends DefaultViewPresenterFactory[RootState.type](() => new RootView)
class RootView extends View {
import scalatags.JsDom.all._
private val child: Element = div().render
private val content = div(
Header.getTemplate,
main(GlobalStyles.main)(
div(GlobalStyles.body)(
//h1("Programming Paradigms"),
child)),
Footer.getTemplate)
override def getTemplate: Modifier = content
override def renderChild(view: View): Unit = {
import io.udash.wrappers.jquery._
jQ(child).children().remove()
view.getTemplate.applyTo(child)
}
}
开发者ID:ObjectNirvana,项目名称:oni-web,代码行数:39,代码来源:RootView.scala
示例9: FunctionView
//设置package包名称以及导入依赖的类
package io.udash.demos.jquery.views
import io.udash._
import org.scalajs.dom.{Element, Event}
abstract class FunctionView extends FinalView {
import scalatags.JsDom.all._
protected val content: Element
protected val script: () => Any
override def getTemplate: Modifier =
div(
content,
button(
onclick :+= ((_: Event) => {
script()
false
})
)("Run script")
)
}
开发者ID:UdashFramework,项目名称:scala-js-jquery,代码行数:23,代码来源:FunctionView.scala
示例10: EachViewPresenter
//设置package包名称以及导入依赖的类
package io.udash.demos.jquery.views.functions
import io.udash._
import io.udash.demos.jquery.IndexState
import io.udash.demos.jquery.views.FunctionView
import io.udash.wrappers.jquery._
import org.scalajs.dom.Element
object EachViewPresenter extends DefaultViewPresenterFactory[IndexState.type](() => new EachView)
class EachView extends FunctionView {
import scalatags.JsDom.all._
override protected val content = div(cls := "demo")(
h3(".each()"),
div("Click button"),
div("to iterate through"),
div("these divs.")
).render
override protected val script = () => {
jQ(".demo div").each((el: Element, idx: Int) => {
jQ(el).replaceWith(span(s"${el.textContent} ").render)
})
}
}
开发者ID:UdashFramework,项目名称:scala-js-jquery,代码行数:28,代码来源:EachView.scala
示例11: OnOneOffViewPresenter
//设置package包名称以及导入依赖的类
package io.udash.demos.jquery.views.functions
import io.udash._
import io.udash.demos.jquery.IndexState
import io.udash.demos.jquery.views.FunctionView
import io.udash.wrappers.jquery._
import org.scalajs.dom.{Element, Event}
object OnOneOffViewPresenter extends DefaultViewPresenterFactory[IndexState.type](() => new OnOneOffView)
class OnOneOffView extends FunctionView {
import scalatags.JsDom.all._
val onCallback = (_: Element, _: JQueryEvent) =>
jQ(".demo ul").append(li("This will be added on every click").render)
val oneCallback = (_: Element, _: JQueryEvent) =>
jQ(".demo ul").append(li("This will be added only once").render)
override protected val content = div(cls := "demo")(
h3(".on() & .one() & .off()"),
button(id := "click", disabled := "disabled")("Click me"),
ul(),
button(
id := "off",
disabled := "disabled",
onclick :+= ((_: Event) => {
jQ(".demo #click")
.off("click", onCallback)
.off("click", oneCallback)
false
})
)("Off")
).render
override protected val script = () => {
jQ(".demo #click")
.on("click", onCallback)
.one("click", oneCallback)
jQ(".demo button")
.prop("disabled", "")
}
}
开发者ID:UdashFramework,项目名称:scala-js-jquery,代码行数:45,代码来源:OnOneOffView.scala
示例12: AttrViewPresenter
//设置package包名称以及导入依赖的类
package io.udash.demos.jquery.views.functions
import io.udash._
import io.udash.demos.jquery.IndexState
import io.udash.demos.jquery.views.FunctionView
import io.udash.wrappers.jquery._
import org.scalajs.dom.{Element, Event}
object AttrViewPresenter extends DefaultViewPresenterFactory[IndexState.type](() => new AttrView)
class AttrView extends FunctionView {
import scalatags.JsDom.all._
override protected val content = div(cls := "demo")(
h3(".attr() & .prop()"),
input(id := "check1", tpe := "checkbox", checked := "checked"),
label(`for` := "check1")("Check me"),
p(),
button(onclick :+= ((_: Event) => {
jQ(".demo input").attr("data-checked", "checked").change()
false
}))(".attr(\"data-checked\", \"checked\")"),
button(onclick :+= ((_: Event) => {
jQ(".demo input").attr("data-checked", "").change()
false
}))(".attr(\"data-checked\", \"\")"),
button(onclick :+= ((_: Event) => {
jQ(".demo input").attr("data-checked", null).change()
false
}))(".attr(\"data-checked\", null)"), br(),
button(onclick :+= ((_: Event) => {
jQ(".demo input").prop("checked", true).change()
false
}))(".prop(\"checked\", true)"),
button(onclick :+= ((_: Event) => {
jQ(".demo input").prop("checked", false).change()
false
}))(".prop(\"checked\", false)")
).render
override protected val script = () => {
jQ(".demo input").change((input: Element, _: JQueryEvent) => {
jQ(".demo p").html(
s""".attr('data-checked'): ${jQ(input).attr("data-checked")}<br/>
|.prop('checked'): ${jQ(input).prop("checked")}<br/>
|.is(':checked'): ${jQ(input).is(":checked")}""".stripMargin
)
}).change()
}
}
开发者ID:UdashFramework,项目名称:scala-js-jquery,代码行数:52,代码来源:AttrView.scala
示例13: NameWidget
//设置package包名称以及导入依赖的类
package se.lu.nateko.cp.doi.gui.widgets
import se.lu.nateko.cp.doi.meta.Name
import scalatags.JsDom.all._
import se.lu.nateko.cp.doi.meta.PersonalName
import se.lu.nateko.cp.doi.meta.GenericName
import org.scalajs.dom.Event
import org.scalajs.dom.Element
import se.lu.nateko.cp.doi.gui.widgets.generic.EntityWidget
import se.lu.nateko.cp.doi.gui.widgets.generic.TextInputWidget
import se.lu.nateko.cp.doi.gui.views.Bootstrap
class NameWidget(init: Name, protected val updateCb: Name => Unit) extends EntityWidget[Name]{
private[this] var _name = init
private def isPersonal: Boolean = _name match{
case _: PersonalName => true
case _: GenericName => false
}
private def getNameElem: Element = _name match{
case pn: PersonalName => new PersonalNameWidget(pn, newPn => {
_name = newPn
updateCb(_name)
}).element
case gn: GenericName => new TextInputWidget(gn.name, newGn => {
_name = GenericName(newGn)
updateCb(_name)
}).element
}
private var nameElem = getNameElem
private def checkedModifier(personal: Boolean) = if(personal == isPersonal) Seq(checked := true) else Nil
private def changeNameType(personal: Boolean): Event => Unit = e => if(isPersonal != personal){
_name = if(personal) PersonalName("", "") else GenericName("")
val newNameElem = getNameElem
nameElem.parentNode.replaceChild(newNameElem, nameElem)
nameElem = newNameElem
updateCb(_name)
}
private def nameTypeOption(personal: Boolean) =
input(tpe := "radio", name := "nameType", onchange := changeNameType(personal))(checkedModifier(personal))
val element = Bootstrap.basicPanel(
Bootstrap.propValueRow(strong("Name type"))(
form(nameTypeOption(true), " Personal name", br, nameTypeOption(false), " Organizational name")
)(paddingBottom := 15),
Bootstrap.propValueRow(strong("Name"))(nameElem)
).render
}
开发者ID:ICOS-Carbon-Portal,项目名称:doi,代码行数:55,代码来源:NameWidget.scala
示例14: rxToFrag
//设置package包名称以及导入依赖的类
package rip.hansolo.script.util
import org.scalajs.dom.Element
import rx.{Rx, Var}
import scala.scalajs.js
import scalatags.JsDom.all._
implicit def rxToFrag[T](r: Rx[T])(implicit converter: T => Frag): Frag = {
def rToFrag = span(r.now).render
var current = rToFrag
r triggerLater {
val newCurrent = rToFrag
js.Dynamic.global.last = current
current.parentNode.replaceChild(newCurrent, current)
current = newCurrent
}
current
}
}
object MdlConverter {
implicit def rxToFrag[T](r: Rx[T])(implicit converter: T => Frag): Frag = {
val upgrader = js.Dynamic.global.componentUpgrader
def rToFrag = span(r.now).render
if(!js.isUndefined(upgrader)) upgrader.upgradeElement(rToFrag)
var current = rToFrag
r triggerLater {
val newCurrent = rToFrag
js.Dynamic.global.last = current
current.parentNode.replaceChild(newCurrent, current)
current = newCurrent
}
current
}
}
implicit def VarAttrValue[T: AttrValue] = new AttrValue[Var[T]]{
def apply(t: Element, a: Attr, r: Var[T]): Unit = {
r.trigger{ implicitly[AttrValue[T]].apply(t, a, r.now) }
}
}
implicit def RxAttrValue[T: AttrValue] = new AttrValue[Rx[T]]{
def apply(t: Element, a: Attr, r: Rx[T]): Unit = {
r.trigger{ implicitly[AttrValue[T]].apply(t, a, r.now) }
}
}
implicit def RxDynamicAttrValue[T: AttrValue] = new AttrValue[Rx.Dynamic[T]]{
def apply(t: Element, a: Attr, r: Rx.Dynamic[T]): Unit = {
r.trigger{ implicitly[AttrValue[T]].apply(t, a, r.now) }
}
}
}
开发者ID:Giymo11,项目名称:http4s-hansolo.rip,代码行数:60,代码来源:ScalatagsRxImplicits.scala
示例15: ErrorViewPresenter
//设置package包名称以及导入依赖的类
package io.udash.web.guide.views
import io.udash._
import io.udash.core.DomWindow
import io.udash.web.commons.styles.GlobalStyles
import io.udash.web.commons.styles.components.FooterStyles
import io.udash.web.commons.styles.utils.StyleConstants
import io.udash.web.guide.Context._
import io.udash.web.guide.styles.partials.{GuideStyles, HeaderStyles}
import io.udash.web.guide.{ErrorState, IntroState}
import io.udash.wrappers.jquery._
import org.scalajs.dom.Element
import scalacss.ScalatagsCss._
import scalatags.JsDom.tags2._
object ErrorViewPresenter extends DefaultViewPresenterFactory[ErrorState.type](() => new ErrorView)
class ErrorView extends FinalView {
import scalatags.JsDom.all._
private val content = section(GuideStyles.get.sectionError)(
div(GlobalStyles.body)(
div(GuideStyles.get.errorInner)(
p(GuideStyles.get.errorHead)(
span(GlobalStyles.red)("Oops! 404"), br(),
span("The link doesn't work. Or maybe it never has? You can still ", a(GlobalStyles.grey, href := "assets/pdf/origami_crane_printok.pdf", target := "_blank")("make origami")), br(),
span("... or go "), a(GlobalStyles.red, href := IntroState.url)("home"), span("")
)
)
)
).render
private lazy val jqTemplate = jQ(content)
val window = jQ(DomWindow)
window.resize((element: Element, _: JQueryEvent) => onResize())
onResize()
private def onResize(): Unit = {
if (window.width <= StyleConstants.MediaQueriesBounds.TabletLandscapeMax) {
val h = window.height - jQ(s".${FooterStyles.get.footer.htmlClass}").outerHeight() - jQ(s".${HeaderStyles.get.header.htmlClass}").outerHeight()
jqTemplate.css("min-height", s"${h}px")
}
}
override def getTemplate: Modifier = content
}
开发者ID:UdashFramework,项目名称:udash-guide,代码行数:49,代码来源:ErrorView.scala
示例16: ProduceDemoComponent
//设置package包名称以及导入依赖的类
package io.udash.web.guide.views.frontend.demos
import io.udash.web.guide.styles.partials.GuideStyles
import io.udash._
import io.udash.wrappers.jquery._
import org.scalajs.dom
import org.scalajs.dom.Element
import scala.util.Random
import scalatags.JsDom
import scalacss.ScalatagsCss._
import io.udash.web.commons.views.Component
class ProduceDemoComponent extends Component {
import io.udash.web.guide.Context._
import JsDom.all._
import scalacss.ScalatagsCss._
val names = Stream.continually(Stream("John", "Amy", "Bryan", "Diana")).flatten.iterator
val name: Property[String] = Property[String](names.next())
val integers: SeqProperty[Int] = SeqProperty[Int](1,2,3,4)
dom.window.setInterval(() => {
name.set(names.next())
val s: Int = integers.get.size
val idx = Random.nextInt(s)
val amount = Random.nextInt(s - idx) + 1
val count = Random.nextInt(5)
integers.replace(idx, amount, Stream.range(idx, idx + amount * count + 1, amount).toSeq: _*)
}, 2000)
override def getTemplate: Modifier = {
div(id := "produce-demo", GuideStyles.get.frame)(
p(
"Name: ",
produce(name)(value => b(id := "produce-demo-name")(value).render), br,
"Integers: ",
produce(integers)((seq: Seq[Int]) => span(id := "produce-demo-integers")(seq.map(p => span(GuideStyles.get.highlightRed)(s"$p, ")): _*).render), br,
"Integers (patching): ",
produce(integers,
(seq: Seq[Property[Int]]) => span(id := "produce-demo-integers-patching")(seq.map(p => span(GuideStyles.get.highlightRed)(id := p.hashCode())(s"${p.get}, ")): _*).render,
(patch: Patch[Property[Int]], els: Seq[Element]) => {
val insertBefore = jQ(els:_*).children().at(patch.idx)
patch.added.foreach(p => jQ(span(id := p.hashCode(), GuideStyles.get.highlightRed)(s"${p.get}, ").render).insertBefore(insertBefore))
patch.removed.foreach(p => jQ(s"#${p.hashCode()}").remove())
}
)
)
)
}
}
开发者ID:UdashFramework,项目名称:udash-guide,代码行数:53,代码来源:ProduceDemoComponent.scala
示例17: simpleExample
//设置package包名称以及导入依赖的类
package io.udash.web.guide.views
import io.udash.web.commons.components.CodeBlock
import io.udash.web.guide.styles.partials.GuideStyles
import org.scalajs.dom.Element
package object rest {
def simpleExample(): Element =
CodeBlock(
"""import io.udash.rest._
|
|@REST
|trait MainServerREST {
| def simple(): SimpleServerREST
|}
|
|@REST
|trait SimpleServerREST {
| @GET def string(): Future[String]
| @GET def int(): Future[Int]
| @GET @RESTName("class") def cls(): Future[RestExampleClass]
|}""".stripMargin
)(GuideStyles)
}
开发者ID:UdashFramework,项目名称:udash-guide,代码行数:25,代码来源:package.scala
示例18: Context
//设置package包名称以及导入依赖的类
package io.udash.web.homepage
import io.udash._
import io.udash.wrappers.jquery._
import org.scalajs.dom.{Element, document}
import scala.scalajs.js.JSApp
import scala.scalajs.js.annotation.JSExport
object Context {
implicit val executionContext = scalajs.concurrent.JSExecutionContext.Implicits.queue
private val routingRegistry = new RoutingRegistryDef
private val viewPresenterRegistry = new StatesToViewPresenterDef
implicit val applicationInstance = new Application[RoutingState](routingRegistry, viewPresenterRegistry, RootState)
}
object Init extends JSApp with StrictLogging {
import Context._
@JSExport
override def main(): Unit = {
jQ(document).ready((_: Element) => {
val appRoot = jQ("#application").get(0)
if (appRoot.isEmpty) {
logger.error("Application root element not found! Check you index.html file!")
} else applicationInstance.run(appRoot.get)
})
}
}
开发者ID:UdashFramework,项目名称:udash-guide,代码行数:31,代码来源:init.scala
示例19: RootViewPresenter
//设置package包名称以及导入依赖的类
package io.udash.web.homepage.views
import io.udash._
import io.udash.web.commons.components.Footer
import io.udash.web.commons.styles.{GlobalStyles, StyleRegistry}
import io.udash.web.commons.styles.components.FooterStyles
import io.udash.web.homepage.RootState
import io.udash.web.homepage.components.Header
import io.udash.web.homepage.styles.HomepageDefaultStyles
import io.udash.web.homepage.styles.partials._
import org.scalajs.dom.Element
import org.scalajs.dom.raw.HTMLStyleElement
import scala.scalajs.js
import scalatags.JsDom.TypedTag
import scalatags.JsDom.tags2._
object RootViewPresenter extends DefaultViewPresenterFactory[RootState.type](() => new RootView)
class RootView extends View {
import scalacss.ProdDefaults._
import scalacss.ScalatagsCss._
import scalatags.JsDom.all._
private var child: Element = div().render
private val defaultStyles = HomepageDefaultStyles.get
private val content = div(
StyleRegistry.styleSheet,
Header.getTemplate,
main(GlobalStyles.get.main)(
child
),
Footer.getTemplate
)
override def getTemplate: Modifier = content
override def renderChild(view: View): Unit = {
import io.udash.wrappers.jquery._
val newChild = view.getTemplate
newChild.applyTo(child)
js.Dynamic.global.svg4everybody()
}
}
开发者ID:UdashFramework,项目名称:udash-guide,代码行数:47,代码来源:RootView.scala
示例20: ErrorViewPresenter
//设置package包名称以及导入依赖的类
package io.udash.web.homepage.views
import io.udash._
import io.udash.core.DomWindow
import io.udash.web.commons.styles.GlobalStyles
import io.udash.web.commons.styles.components.FooterStyles
import io.udash.web.commons.styles.utils.StyleConstants
import io.udash.web.homepage.Context._
import io.udash.web.homepage.IndexState
import io.udash.web.homepage.styles.partials.HomepageStyles
import io.udash.wrappers.jquery._
import org.scalajs.dom.Element
import scalacss.ScalatagsCss._
import scalatags.JsDom.tags2._
object ErrorViewPresenter extends DefaultViewPresenterFactory[IndexState](() => new ErrorView)
class ErrorView extends FinalView {
import scalatags.JsDom.all._
private val content = section(HomepageStyles.get.sectionError)(
div(GlobalStyles.get.body)(
div(HomepageStyles.get.errorInner)(
p(HomepageStyles.get.errorHead)(
span(GlobalStyles.get.red)("Oops! 404"), br(),
span("The link doesn't work. Or maybe it never has? You can still ", a(GlobalStyles.get.grey, href := "assets/pdf/origami_crane_printok.pdf", target := "_blank")("make origami")), br(),
span("... or go "), a(GlobalStyles.get.red, href := IndexState(None).url)("home"), span(".")
)
)
)
).render
private lazy val jqTemplate = jQ(content)
val window = jQ(DomWindow)
window.resize((element: Element, _: JQueryEvent) => onResize())
onResize()
private def onResize(): Unit = {
if (window.width <= StyleConstants.MediaQueriesBounds.TabletLandscapeMax) {
val h = window.height - jQ(s".${FooterStyles.get.footer.htmlClass}").outerHeight()
jqTemplate.css("min-height", s"${h}px")
}
}
override def getTemplate: Modifier = content
}
开发者ID:UdashFramework,项目名称:udash-guide,代码行数:49,代码来源:ErrorView.scala
注:本文中的org.scalajs.dom.Element类示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论