Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / Функция, объект, __proto__ / 2 сообщений из 2, страница 1 из 1
09.10.2017, 09:51
    #39533213
user89
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Функция, объект, __proto__
Сделал тестовый пример, который делает нужные мне операции (в IE11 тоже работает)
- присваивает/добавляет элементы
- выдает количество
- очищает список
Код: html
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
<style>
p {margin:2px;}
#div1, #div2 {height:140px; width:240px; border:1px solid #ccc;}
</style>
</head>
<body>
<div id="div1"> </div>
<div id="div2"> </div>
<script>
var TListbox = function(idx) {
  var cont = document.getElementById(idx);
  this.__proto__ = {
    get count() {return cont.children.length;},
    get clear() {cont.innerHTML = '';},
    get items() {return cont.children;},
    set items(s) {cont.innerHTML = s;}
  };
  this.items.add = function(s) {cont.innerHTML += s;}
};//TListbox

var d1 = new TListbox('div1');
d1.items = '<p>Строка 1</p> <p>Строка 2</p>';
d1.items.add('<p>Добавили строку в первый контейнер</p>');
alert(d1.items[d1.count-1].textContent, '<br>');

var d2 = new TListbox('div2');
d2.items = '<p>Строка 2_1</p> ';
d2.items.add('<p>Новая строка второго контейнера</p>');

d1.clear;
d2.clear;
</script>
</body>

В реальности, innerHTML будет поставляться в нужном виде через ajax-запрос.

Вопрос .С точки зрения архитектуры, есть ли у функции TListbox какие-нибудь недостатки, или подводные камни?
...
Рейтинг: 0 / 0
11.10.2017, 10:30
    #39534471
DeanWinchester
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Функция, объект, __proto__
user89,

1) get/set не везде поддерживаются( по крайней мере в старых браузерах) и полифила для них нет
2) проще копать в сторону react/angular, ибо самописки это хорошо, но нужна поддержка сообщества
...
Рейтинг: 0 / 0
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / Функция, объект, __proto__ / 2 сообщений из 2, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]