2015-07-14 3 views
2

Возможно ли создание элементов Onsen UI динамически с использованием JavaScript? Официальный documentation ничего не говорит об этом.Динамически создавать элементы пользовательского интерфейса Onsen

+1

Ссылка ведет на страницу 404 –

+1

Там что-то в документации, действительно: http://onsen.io/guide/overview.html#onscompile function –

+0

Спасибо, я проверю это! – Anima

ответ

0
var content = document.getElementById("my-content"); 
    content.innerHTML="<ons-button>Another Button</ons-button>"; 
    ons.compile(content); 

с этим в вас HTML

<div id="my-content"></div> 
+0

Ваш ответ не предоставляет никакой дополнительной информации ранее опубликованной. Во всяком случае, изменение непосредственно innerHTML с элементом 'my-content', будет перезаписывать предыдущий контент. Более того, метод 'ons.compile()' будет вызываться автоматически после добавления этого элемента в DOM –

+0

да, но вам нужно будет вызвать его, если вы хотите изменить элемент после добавления его в DOM. он будет вызван для вас один раз, и тогда вам нужно будет называть это самостоятельно. Исправьте меня, если я ошибаюсь – Anima

+0

Это зависит от того, что вы изменяете, большая часть атрибутов может быть добавлена ​​и удалена динамически, без необходимости вызова 'ons.compile()'. –

5

Вы можете создавать динамически элементы OnUUU UUI с помощью функции ons._util.createElement(). Для ввода требуется код HTML, который вы хотите сгенерировать. Например:

var button = ons._util.createElement("<ons-button></ons-button>"); 
document.body.appendChild(button); 

Это создаст ons-button элемент, и добавить его к телу.

EDIT

Вы также можете создать его в качестве альтернативного способа:

var div = document.createElement('div'); 
div.innerHTML = '<ons-button></ons-button>' 
document.body.appendChild(div); 
+0

это не работает. – Anima

+0

@Amina, чтобы использовать его, вы должны использовать onsen ui последнюю версию от GitHub: [скачать] (https://github.com/OnsenUI/OnsenUI/archive/master.zip). Я также обновил свой ответ с помощью альтернативного способа сделать это. –

Смежные вопросы