Как вызвать Dom.transform для элемента без идентификатора? - PullRequest
1 голос
/ 22 октября 2011

Я пытался расширить приложение hello_chat. Я хотел заменить содержимое тега "body", но не могу найти способ сделать это. Я предполагал, что Dom.transform([Dom.select_body <- content]) справится, но, по-видимому, ошибся. В конце я только что создал div с идентификатором "everything", чтобы обернуть страницу, но вопрос все еще беспокоит меня.

Как мне сделать преобразование для тега "body"? Является ли это возможным? Более того, есть ли способ использовать CSS-селекторы для преобразования одного или нескольких элементов одновременно?

1 Ответ

1 голос
/ 22 октября 2011

Первое простое решение:

Dom.transform([#Body <- content])

Opa добавляет идентификатор 'Body' к <body>.

Второе решение:

do Dom.transform([{Dom.select_body()} <- content])

Обратите внимание на фигурные скобки вокруг Dom.select_XXX и вызов функции http://doc.opalang.org/api/index.html#dom.opa.html/!/value_stdlib.core.xhtml.Dom.select_body

Третье решение:

d = Dom.select_raw("body") // jQuery selector
do Dom.transform([{d} <- content])

Вы также можете использовать необработанный селектор CSS :) http://doc.opalang.org/api/index.html#dom.opa.html/!/value_stdlib.core.xhtml.Dom.select_raw

...