Аддонная функция jquery не добавляет элемент в DOM в nw.js на панели w2ui

Я создал это в скрипке, чтобы показать, что я пытаюсь сделать в nw.js. Это работает просто отлично. 2 вкладки создаются динамически во время выполнения просто отлично.

http://jsfiddle.net/fnbqupf4/

Я переношу это на свой nw.js и получаю сообщение об ошибке при вызове ace.edit(), сообщая, что не может найти идентификатор элемента. Когда я смотрю на DOM в nw.js, я вижу вкладку, и там НЕ создается редактор. Таким образом, проблема заключается в том, что вкладка и div редактора создаются в jsFiddle, а не на сайте nw.js.

Есть ли что-то, что не позволяет динамически добавлять элементы в DOM в nw.js?

$.fn.addEditorTab = function(name, tabName, contents) {
            console.log("1");
            $('ul', this).append('<li title="' + name + '"><a href="#tab-' + name + '">' + tabName + '</a><span class="ui-icon ui-icon-close" role="presentation"></li>');
            $(this).append("<div id='tab-" + name + "'><div id='editor-" + name + "' class='editor'></div></div>");
            $(this).tabs("refresh");
            console.log("2");

            var editor = ace.edit("editor-" + name);
            console.log("3");
            editor.setTheme("ace/theme/monokai");
            editor.getSession().setMode("ace/mode/lua");
            editor.setOptions({
                maxLines: Infinity
            });
            editor.getSession().setValue(contents);

            return editor;
        };

[РЕДАКТИРОВАТЬ] После некоторого возни кажется, что это проблема только когда у меня есть вкладки div внутри панели в w2ui.

$('#layout').w2layout({
                name: 'layout',
                panels: [
                    { type: 'top', size: 50, style: pstyle, content: 'top', resizable: true },
                    { type: 'left', size: 300, style: pstyle, content: '<div id="sidebar" style="height: 100%; width: 100%;"></div>', resizable: true }
                    //{ type: 'main', style: pstyle, content: '<div id="editor"></div>' }
                    { type: 'main', style: pstyle, content: '<div id="tabs"><ul></ul></div>' }
                ]
            });

0 ответов

Другие вопросы по тегам