Привязка пользовательских функций к событиям DOM в прототипе?
-
09-06-2019 - |
Вопрос
В Jquery есть отличная языковая конструкция, которая выглядит примерно так:
$(document).ready(function() {
$("a").click(function() {
alert("Hello world!");
});
});
Как вы могли догадаться, после загрузки документа пользовательская функция привязывается к событию onClick всех a Теги.
Вопрос в том, как я могу добиться такого же поведения в Prototype?
Решение
Прототип 1.6 обеспечивает "дом: загружен" событие в документе:
document.observe("dom:loaded", function() {
$$('a').each(function(elem) {
elem.observe("click", function() { alert("Hello World"); });
});
});
Я также использую каждый итератор по массиву, возвращаемому $$().
Другие советы
$(document).observe('dom:loaded', function() {
$$('a').invoke('observe', 'click', function() {
alert('Hello world!');
});
});
Event.observe(window, 'load', function() {
Event.observe(element, 'click', function() {
alert("Hello World!");
});
});
Конечно, сначала вам нужно "выбрать" элементы в Prototype.
В этой статье дается довольно хороший обзор библиотеки событий Prototype.Я думаю, что по сравнению с jQuery это API каменного века.:)
http://alternateidea.com/blog/articles/2006/2/8/working-with-events-in-prototype
Не связан с StackOverflow