Добавить атрибут к дочернему элементу в Grape Js?
Я работаю в JES в течение длительного времени.
Теперь я сталкиваюсь с проблемой init.
Выпуск:
Это компонент, который я пытаюсь добавить в редакторе.
<div class="page">
<div class="col1"></div>
<div class="col2"></div>
</div>
После добавления этих компонентов я пытаюсь добавить некоторые вычисленные значения к таким элементам, как это,
element.on('component:add',function(ele){
ele.addAttributes({
'data-top' : topOffset,
'data-left' : leftOffset,
});
editor.render();// For render Updated html
});
Но этот код только обновляет .page
только компонент.
Как я могу добавить эти атрибуты в .col1,.col2
элементы внутри .page
составная часть?
1 ответ
Решение
Я читаю документацию и, похоже, нет простого способа получить то, что вы хотите. Однако вы можете сделать что-то вроде ниже фрагмента. Он перебирает все дочерние элементы и добавляет к ним атрибуты.
editor.on('component:add', function (ele, argument) {
ele.setAttributes({
'data-top' : 10,
'data-left' : 20,
});
ele.attributes.components.models.forEach(function(item){
if(item.attributes.tagName == 'div') {
item.setAttributes({
'data-top' : 10,
'data-left' : 20,
})
}
})
editor.render();// For render Updated html
})