Нет ли действительно никакой способ выставить прототип элемента HTML в IE (<8)?

Измените .split(Pattern.quote(",")); на шаблон регулярного выражения, соответствующий пробелу до и после запятой (которую не нужно заключать в кавычки). Например,

.split("\\s*,\\s*");

с этим изменением я получаю

Varibels : name1, name2,  name3
names: name1
names: name2
names: name3
7
задан Tom van der Woerdt 28 December 2011 в 15:54
поделиться

2 ответа

Нет, и при этом не гарантируется, что можно играть с прототипами Объектов DOM в JavaScript в целом. Объекты DOM не являются частью спецификации ECMAScript; они не могут быть (и традиционно разговор не), собственные Объекты JavaScript вообще, в любом браузере.

Поэтому платформы имеют тенденцию иметь свои собственные 'контейнерные' классы обертки.

Также Вы не можете полагаться на ‘t.el.constructor’, даже если они были собственными Объектами JS. 'конструктор' не является стандартным свойством, не доступно в IE, и даже в Mozilla не делает то, что Вы могли бы думать, что это делает. Избежать.

12
ответ дан 6 December 2019 в 12:55
поделиться

Да там действительно не способ сделать это.

Элементы IE являются базирующимися COM-объектами, которые на самом деле не позволяют arbitary участникам быть добавленными к своим интерфейсам (в COM, интерфейсы являются контрактом и никогда не должны изменяться). Реализация этих интерфейсов не может быть расширена JavaScript, элементы просто не являются prototypal.

IE добавляет специальный интерфейс, разработанный для работы с JavaScript для разрешения добавления новых участников к определенному экземпляру, но Вы не можете добавить нового участника к 'классу', так как нет никакого прототипа для игры с.

4
ответ дан 6 December 2019 в 12:55
поделиться
Другие вопросы по тегам:

Похожие вопросы: